日期:2014-05-19  浏览次数:20657 次

初学者,请教问题。。
代码如下:
System.out.println("enter a number :");
int myInt = (int)System.in.read();
System.out.println(myInt);

输出结果:
enter a number :
1
49

我想问下,为什么我键盘输入的是数字 1 ,而最后系统打印的时候是 49?


------解决方案--------------------
这里输出的是1对应的ASC||码值。1对应的就是49
如果你输入?,它会输出63。
楼主对应一下ASC||表就知道了。



要实现你的功能可以这样:
Java code
System.out.println("enter a number :");
        Scanner sc=new Scanner(System.in);
        String s =sc.next();
        System.out.println(s);

------解决方案--------------------
System.in.read()返回的是输入数值的 ASKII 码(一个 int 整数)。