public static void main(String args[]) throws Exception
{
int data ;

data=System.in.read();
  
    
System.out.write(data);

System.out.flush();}public static void main(String args[]) throws Exception
       {
            while((data=System.in.read())!=-1)
{
  System.out.write(data);
 }  
}
我有个疑问一直搞不明白:假如只输入一个字符,运行第一个的时候就需要调用flush()按回车后才能及时把这个字符显示出来;而在第二个运行是也只输入一个字符按回车而没有调用flush()就可以立即把输入的打印出来!!哪位哥哥能告诉俺这是为什么啊!!
还有一个问题就是 JAVA虚拟机才用的是unicode!一个字符站两个字节!而in.read()只能读一个字节的数据!但最后却还能把字母打印出来???????
望各位大侠不吝赐教!!