这些真是面试题?
2,用StringBuffer
3,继承FileReader
4,

解决方案 »

  1.   

    http://blogger.org.cn/blog/more.asp?name=hongrui&id=25403
      

  2.   

    编写一个方法,这个方法搜索一个字符数组中是否存在某个字符,如果存在,则返回这个字符在字符数组中第一次出现的位置(序号从0开始计算),否则,返回-1。要搜索的字符数组和字符都以参数形式传递传递给该方法,如果传入的数组为null,应抛出IllegalArgumentException异常。在类的main方法中以各种可能出现的情况测试验证该方法编写得是否正确,例如,字符不存在,字符存在,传入的数组为null等。
     public static int search(char a[],char b) {
            if(a==null)
                throw new IllegalArgumentException();
            String temp=new String(a);
            return temp.indexOf(b);
        }
    编写一个程序,这个程序把一个整数数组中的每个元素用逗号连接成一个字符串,例如,根据内容为[1][2][3]的数组形成内容为"1,2,3"的字符串。 
    public static String append(char a[])
         {
             StringBuffer sb=new StringBuffer();
             for(int i=0;i<a.length;i++)
             {
                if(i!=0) sb.append(",");
                sb.append(a[i]);
             }
             return sb.toString();
         } 
    请编写一个字符输入流的包装类,通过这个包装类对底层字符输入流进行包装,让程序通过这个包装类读取某个文本文件(例如,一个java源文件)时,能够在读取的每行前面都加上有行号和冒号。
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.Reader;/**
     *
     * @author hongrui xing
     */
    public class LineNumberReader extends BufferedReader{
        private int lineNumber = 0;
        
        public LineNumberReader(Reader in) {
            super(in);
        }
        
        public String readLine() throws IOException {
            StringBuffer sb= new StringBuffer();
            synchronized (lock) {
                
                String l = super.readLine();
                
                if (l != null) {
                    lineNumber++;
                    sb.append(String.valueOf(lineNumber));
                    sb.append(":");
                    sb.append(l);
                }
                
                return sb.toString();
            }
        }
        
        
    }在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,河南省安阳市 黑蜘蛛网吧(师范学院附近) 
    代码
           String a="61.54.231.245 61.54.231.245 河南省安阳市 新世纪网吧 ";
           String regex = "(((2[0-4]\\d)|(25[0-5]))|(1\\d{2})|([1-9]\\d)|(\\d))[.](((2[0-4]\\d)|(25[0-5]))|(1\\d{2})|([1-9]\\d)|(\\d))[.](((2[0-4]\\d)|(25[0-5]))|(1\\d{2})|([1-9]\\d)|(\\d))[.](((2[0-4]\\d)|(25[0-5]))|(1\\d{2})|([1-9]\\d)|(\\d)\\s)";
            a=a.replaceAll(regex,"$0,");
            System.out.println(a);
      

  3.   

    编写一个方法,这个方法搜索一个字符数组中是否存在某个字符,如果存在,则返回这个字符在字符数组中第一次出现的位置(序号从0开始计算),否则,返回-1。要搜索的字符数组和字符都以参数形式传递传递给该方法,如果传入的数组为null,应抛出IllegalArgumentException异常。在类的main方法中以各种可能出现的情况测试验证该方法编写得是否正确,例如,字符不存在,字符存在,传入的数组为null等。
    public static int search(char a[],char b) {
            if(a==null)
                throw new IllegalArgumentException();
            String temp=new String(a);
            if(!(temp.indexOf(b)>=0)){
             return -1;
            }
            else
            return temp.indexOf(b);
        }增加了字符在数组中不存在字符返回-1。hongrui的回复那里少了这个
      

  4.   

    请登陆 http://blog.csdn.net/mqboss/ 上面有对java面试问题的专门的整理和解答
      

  5.   

    public class Test1 {
    public static int indexOf(char[] array,char c) throws IllegalArgumentException {
    if (array == null || array.length <=0 )
    throw new IllegalArgumentException("Array is null");
    for (int i = 0; i<array.length; i++)
    if (array[i] == c)
    return i;
    return -1;
    }
    public static void main(String args[]) {
    try {
    char[] a = {'a','b'};
    char[] b = null;
    System.out.println(indexOf(a,'b'));
    System.out.println(indexOf(a,'c'));
    System.out.println(indexOf(b,'a'));
    } catch (IllegalArgumentException e) {System.out.println(e.getMessage());}
    finally {
    try {
    char[] c = {};
    System.out.println(indexOf(c,'a'));
    } catch (IllegalArgumentException e) {System.out.println(e.getMessage());}
    }
    }
    }
      

  6.   

    public class Test2 {
    public static void main(String args[]) {
    int[] a = {1,2,3};
    StringBuilder s = new StringBuilder();
    for (int i = 0; i < a.length; i++) {
    s.append(a[i]);
    if (i < a.length - 1)
    s.append(',');
    }
    System.out.println(s);
    }
    }
      

  7.   

    import java.io.*;public class Test3 {
    BufferedReader br; public Test3(String file) {
    try {
    br = new BufferedReader(new FileReader(file));
    } catch (FileNotFoundException e) {
    e.printStackTrace();
    }
    }

    public String readLine() {
    StringBuilder s = new StringBuilder();
    String line;
    try {
    for (int i = 1;(line = br.readLine()) != null; i++)
    s.append(i).append(':').append(line).append('\n');
    } catch (IOException e) {
    e.printStackTrace();
    }
    return s.toString();
    }

    public static void main(String args[]) {
    Test3 t = new Test3("Test1.java");
    System.out.print(t.readLine());
    }
    }
      

  8.   

    第5题...不如调用oracle的exp命令来备份就算了......
      

  9.   

    import java.io.*;public class Test4 {
    public static void main(String args[]) {
    try {
    BufferedReader br = new BufferedReader(new FileReader("test.txt"));
    String line;
    StringBuilder result = new StringBuilder();

    while ((line = br.readLine()) != null) {
    int pos1 = line.indexOf(' ');
    int pos2 = line.indexOf(' ', pos1 + 1);

    if (pos1 == -1) {
    result.append(line).append('\n');
    continue;
    }
    result.append(line.substring(0, pos1)).append(',');

    if (pos2 == -1)
    result.append(pos1 + 1).append('\n');
    else {
    result.append(line.substring(pos1 + 1, pos2)).append(',');
    result.append(line.substring(pos2 + 1)).append('\n');
    }
    }

    System.out.print(result);
    } catch (FileNotFoundException e) {
    e.printStackTrace();
    } catch (IOException e) {
    e.printStackTrace();
    }
    }
    }
      

  10.   

    作都在弄人吧,去microsoft面试都没有咧么。