各位早起的大哥早上好!小弟有个问题请教啊!很简单的但是我新手解决不了:(public class Test
{
public void display(){
  System.out.println("是否继续?(y/n)");
  try{
  System.in.read(buf);
  choose = new String(buf).trim();
  }catch(IOException e) {
    e.printStackTrace();
  }
  if(choose.equals("y")){
     System.out.println(choose);
     Menu();
  }else{
     System.out.println("exit....");
     System.exit(0);
  }
}public void Menu()
{}public static void main(String args[]){
  new Test().display();
}
}问是否继续 输入y后  按照我的想法 应该执行System.out.println(choose); Menu();这两句啊 但是实际却是
输出一个exit... 然后程序就退出了 请问我哪里写错了呀呀呀 哎 太笨了搞不清坨了
     

解决方案 »

  1.   

    啊 变量choose没有申明 不好意思 这是从代码里面截取一段 原来我是在上面申明了String choose="";
      

  2.   

    还有变量buf 是个字节数组的对象 byte[] buf = new byte[1024];都忘记加了不好意思:(
      

  3.   

    import java.io.*;class Test {
        public void display() {
            byte[] buf = new byte[1024];
            String choose = "";
            System.out.println("是否继续?(y/n)");
            try {
                System.in.read(buf);
                choose = new String(buf).trim();
            } catch (IOException e) {
                e.printStackTrace();
            }
            if (choose.equals("y")) {
                System.out.println(choose);
                Menu();
            } else {
                System.out.println("exit....");
                System.exit(0);
            }
        }    public void Menu() {
            System.out.println("Menu().....");
        }    public static void main(String args[]) {
            new Test().display();
        }
    }