关于java输入的问题,望高手指教 ^_^
前几天刚知道要想在java环境下获得int类型的变量,必须通过以下的代码来实现:   
 BufferedReader   buf   =   new   BufferedReader(   new   InputStreamReader(System.in)); 
 String   s   =   buf.readLine(); 
 int   i   =   Integer.parseInt(s);   
 但是这样的输入必须是输入一个数字敲一下回车,有没有像C++中cin那样的可以忽略空格的一次可以输入多个数据?   
 再有一个问题就是:上面的那段代码有没有更简单的方法,比如C++就是一个cin就可以搞定了,而C#也就是一个ReadLine。为什么java要把输入搞得这么复杂?难道就没有一个int   i   =   System.in.read()吗?可是当我这么输入的时候,竟然是输入12,输出49!无奈,看不明白。。。
------解决方案--------------------import java.util.*; 
 public class T1 {   
 	/** 
 	 * @param args 
 	 */ 
 	public static void main(String[] args) { 
 		// TODO Auto-generated method stub 
 		Scanner s = new Scanner(System.in); 
 		int a,b,c; 
 		a = s.nextInt(); 
 		b = s.nextInt(); 
 		c = s.nextInt(); 
 //控制台> 1 2 3 
 //然后回车 
 		System.out.println(a+ "\t "+b+ "\t "+c); 
 	}   
 }   
 int i = System.in.read()吗?可是当我这么输入的时候,竟然是输入12,输出49! 
 读的是字符1,ascii是49,如果你两次调用,第二次输出是50,因为‘1’后面输入的是‘2’ 
 		int i = System.in.read();//输入12 
 		System.out.println(i);//输出49 
 		i = System.in.read();//这里不用输入,因为上面输入了12,还有2在缓冲区 
 		System.out.println(i);//直接输出50