试题1:
请在一个类中编写一个方法,这个方法搜索一个字符数组中是否存在某个字符,如果存在,则返回这个字符在字符数组中第一次出现的位置(序号从0开始计算),否则,返回-1。要搜索的字符数组和字符都以参数形式传递传递给该方法,如果传入的数组为null,应抛出IllegalArgumentException异常。在类的main方法中以各种可能出现的情况测试验证该方法编写得是否正确,例如,字符不存在,字符存在,传入的数组为null等。
试题2:
编写一个程序,这个程序把一个整数数组中的每个元素用逗号连接成一个字符串,例如,根据内容为[1][2][3]的数组形成内容为"1,2,3"的字符串。 试题3:
编写一个程序,它先将键盘上输入的一个字符串转换成十进制整数,然后打印出这个十进制整数对应的二进制形式。
十进制数转二进制数的方式是用这个数除以2,余数就是二进制数的最低位,接着再用得到的商作为被除数去除以2,这次得到的余数就是次低位,如此循环,直到被除数为0为止。其实,只要明白了打印出一个十进制数的每一位的方式(不断除以10,得到的余数就分别是个位,十位,百位),就很容易理解十进制数转二进制数的这种方式。这个程序要考虑输入的字符串不能转换成一个十进制整数的情况,并对转换失败的原因要区分出是数字太大,还是其中包含有非数字字符的情况。 试题4:
请用移位的方式打印出一个十进制整数的十六进制形式。提示:按每4个二进制位对整数进行移位和去高位处理,得到的结果就是十六进制数的一位,然后按下面三种方式之一(作为作业,要求每种方式都用到)计算出一个十六进制数值对应的十六进制形式:
1)0-9之间的数值直接加上字符'0',9以上的数值减去10以后再加上字符'A'
2)定义一个数组,其中包含0-F这些字符,然后用要计算的数值作为数组的索引号,即可获得其对应的十六进制数据。
3)Character.forDigit静态方法可以将一个十六进制的数字转变成其对应的字符表示形式,例如,根据数值15返回字符'F'。 试题5:
请结合我们的《javascript网页开发》一书中介绍的正则表达式与String.split方法,从"http://www.it315.org/get.jsp?user=zxx&pass=123"这样的URL地址中提取出每个参数的名称和值。这里要注意在正则表达式中要对?进行转义处理. 试题6:
编写一个程序,用于实现文件的备份,程序运行时的命令语法为:
java MyCopy <sourcefile> <destfile> 试题7:
请编写一个字符输入流的包装类,通过这个包装类对底层字符输入流进行包装,让程序通过这个包装类读取某个文本文件(例如,一个java源文件)时,能够在读取的每行前面都加上有行号和冒号。 试题8:
在javascript视频的第七讲的第一个片断,也就是网站上提供的免费片断《正则表达式的应用》中,讲到了将一个保存有ip地址与地区对照关系的文本文件导入到数据库时,应该将其中的某些空格替换成逗号(,),即对于如下格式的文本文件内容:
起始IP 结束IP 地区
---------------------------------------------------------------
61.54.231.245 61.54.231.245 河南省安阳市 新世纪网吧
61.54.231.246 61.54.231.246 河南省安阳市 未知地区
61.54.231.9 61.54.231.247 河南省安阳市 红日网吧
61.54.231.248 61.54.231.248 河南省安阳市 安阳师范学院
61.54.231.249 61.54.231.249 河南省安阳市 黑蜘蛛网吧(师范学院附近)
应转换成下面的这种格式:
61.54.231.245,61.54.231.245,河南省安阳市 新世纪网吧
61.54.231.246,61.54.231.246,河南省安阳市 未知地区
61.54.231.247,61.54.231.247,河南省安阳市 红日网吧
61.54.231.248,61.54.231.248,河南省安阳市 安阳师范学院
61.54.231.249,61.54.231.249,河南省安阳市 黑蜘蛛网吧(师范学院附近)
请在一个类中编写一个方法,这个方法搜索一个字符数组中是否存在某个字符,如果存在,则返回这个字符在字符数组中第一次出现的位置(序号从0开始计算),否则,返回-1。要搜索的字符数组和字符都以参数形式传递传递给该方法,如果传入的数组为null,应抛出IllegalArgumentException异常。在类的main方法中以各种可能出现的情况测试验证该方法编写得是否正确,例如,字符不存在,字符存在,传入的数组为null等。
试题2:
编写一个程序,这个程序把一个整数数组中的每个元素用逗号连接成一个字符串,例如,根据内容为[1][2][3]的数组形成内容为"1,2,3"的字符串。 试题3:
编写一个程序,它先将键盘上输入的一个字符串转换成十进制整数,然后打印出这个十进制整数对应的二进制形式。
十进制数转二进制数的方式是用这个数除以2,余数就是二进制数的最低位,接着再用得到的商作为被除数去除以2,这次得到的余数就是次低位,如此循环,直到被除数为0为止。其实,只要明白了打印出一个十进制数的每一位的方式(不断除以10,得到的余数就分别是个位,十位,百位),就很容易理解十进制数转二进制数的这种方式。这个程序要考虑输入的字符串不能转换成一个十进制整数的情况,并对转换失败的原因要区分出是数字太大,还是其中包含有非数字字符的情况。 试题4:
请用移位的方式打印出一个十进制整数的十六进制形式。提示:按每4个二进制位对整数进行移位和去高位处理,得到的结果就是十六进制数的一位,然后按下面三种方式之一(作为作业,要求每种方式都用到)计算出一个十六进制数值对应的十六进制形式:
1)0-9之间的数值直接加上字符'0',9以上的数值减去10以后再加上字符'A'
2)定义一个数组,其中包含0-F这些字符,然后用要计算的数值作为数组的索引号,即可获得其对应的十六进制数据。
3)Character.forDigit静态方法可以将一个十六进制的数字转变成其对应的字符表示形式,例如,根据数值15返回字符'F'。 试题5:
请结合我们的《javascript网页开发》一书中介绍的正则表达式与String.split方法,从"http://www.it315.org/get.jsp?user=zxx&pass=123"这样的URL地址中提取出每个参数的名称和值。这里要注意在正则表达式中要对?进行转义处理. 试题6:
编写一个程序,用于实现文件的备份,程序运行时的命令语法为:
java MyCopy <sourcefile> <destfile> 试题7:
请编写一个字符输入流的包装类,通过这个包装类对底层字符输入流进行包装,让程序通过这个包装类读取某个文本文件(例如,一个java源文件)时,能够在读取的每行前面都加上有行号和冒号。 试题8:
在javascript视频的第七讲的第一个片断,也就是网站上提供的免费片断《正则表达式的应用》中,讲到了将一个保存有ip地址与地区对照关系的文本文件导入到数据库时,应该将其中的某些空格替换成逗号(,),即对于如下格式的文本文件内容:
起始IP 结束IP 地区
---------------------------------------------------------------
61.54.231.245 61.54.231.245 河南省安阳市 新世纪网吧
61.54.231.246 61.54.231.246 河南省安阳市 未知地区
61.54.231.9 61.54.231.247 河南省安阳市 红日网吧
61.54.231.248 61.54.231.248 河南省安阳市 安阳师范学院
61.54.231.249 61.54.231.249 河南省安阳市 黑蜘蛛网吧(师范学院附近)
应转换成下面的这种格式:
61.54.231.245,61.54.231.245,河南省安阳市 新世纪网吧
61.54.231.246,61.54.231.246,河南省安阳市 未知地区
61.54.231.247,61.54.231.247,河南省安阳市 红日网吧
61.54.231.248,61.54.231.248,河南省安阳市 安阳师范学院
61.54.231.249,61.54.231.249,河南省安阳市 黑蜘蛛网吧(师范学院附近)
public int getIndex(String strValue,String[] str){
if(str != null && strValue != null){
for(int i=0;i<str.length();i++){
if(strValue.Equals(str[i])){
return(i);
}
}
return(-1);
}
}
基本是这样,关于抛出异常你自己写吧
int a=new int[5];
String str="";
for(int i=0;i<a.length;i++)
{
str+=a[i]+",";
}
System.out.println(str);
public class Test {
public static void main(String[] args) {
int i1 = search(new int[] { 1, 2, 3 }, 4);
int i2 = search(new int[] { 1, 2, 3 }, 3);
int i3 = search(null, 4);
} static int search(int[] is, int i) {
if (is == null)
throw new IllegalArgumentException();
for (int j = 0; j < is.length; j++) {
if (is[j] == i)
return j;
}
return -1;
}
}2.
public class Test {
public static void main(String[] args) {
System.out.println(convert(new int[]{1,2,3}, "").substring(1));
}
static String convert(int[] is, String s){
return is.length>0?convert(reduce(is), s+","+is[0]):s;
}
static int[] reduce(int[] is){
int[] is1 = new int[is.length-1];
for(int i = 1; i < is.length; i++)
is1[i-1] = is[i];
return is1;
}
}3.
public class Test {
public static void main(String[] args) {
String src = System.console().readLine();
int i = Integer.parseInt(src);//This method will give the failed reason.
String aim = "";
while (i > 1) {
aim = i % 2 + aim;
i /= 2;
}
aim = i+aim;
System.out.println(aim);
}
}4.
public class Test {
public static void main(String[] args) { int i = Integer.parseInt(System.console().readLine());
String a = "";
while (i > 0) {
int m = i % 16;
a = convert3(m)+a;;
i = i / 16;
}
System.out.println(a);
} //方法1
public static String convert1(int m) {
if (m < 10)
return m+"";
else
return (char) ('A' + m - 10) + "";
} //方法2
public static String convert2(int m) {
return cs[m]+"";
} private static final char[] cs = new char[] { '0', '1', '2', '3', '4', '5',
'6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' }; //方法3
public static String convert3(int m){
return Character.forDigit(m, 16)+"";
}
}5。
public class Test {
public static void main(String[] args) {
String url = "http://www.it315.org/get.jsp?user=zxx&pass=123";
String[] ss = url.split("\\?");
String usr = ss[1].split("&")[0].split("=")[1];
String pas = ss[1].split("&")[1].split("=")[1];
System.out.println(usr);
System.out.println(pas);
}
}6。
package temp;import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
public class Test {
public static void main(String[] args) throws IOException{
String src = args[0];
String dst = args[1];
InputStream is = new BufferedInputStream(new FileInputStream(new File(src)));
OutputStream os = new BufferedOutputStream(new FileOutputStream(new File(dst)));
ArrayList list = new ArrayList();
while(is.available()>0){
byte[] b = new byte[is.available()];
is.read(b);
list.add(b);
}
is.close();
for(int i = 0; i < list.size(); i++){
os.write((byte[]) list.get(i));
os.flush();
}
os.close();
}
}7。
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
public class Test {
public static void main(String[] args) throws IOException {
File f = new File(args[0]);
BufferedReader reader = new BufferedReader(new FileReader(f));
int i = 0;
while(reader.ready()){
System.out.println(readLine(reader, i++));
}
}
public static String readLine(BufferedReader reader, int i) throws IOException{
return i+" : "+reader.readLine();
}
}8。
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.regex.Matcher;
import java.util.regex.Pattern;public class Test {
public static void main(String[] args) throws IOException {
//read file
InputStream is = new BufferedInputStream(new FileInputStream(new File(args[0])));
String src = "";
while(is.available()>0){
byte[] b = new byte[is.available()];
is.read(b);
src+=new String(b);
}
//replace, use regular expression
Matcher m = Pattern.compile(ipRex+" "+ipRex).matcher(src);
while(m.find()){
String sub = src.substring(m.start(), m.end());
String sub1 = sub.replace(" ", ",");
src = src.replace(sub, sub1);
m = Pattern.compile(ipRex+" "+ipRex).matcher(src);
}
System.out.println(src);
} static final String ipRex = "(\\d{1,3}\\.){3}\\d{1,3}";
}