1.BufferedReader br=new BufferedReader(new InputStreamReader(System.in));为什么调用它的函数要在后面加throws IOExpection或者把调用它的函数写在try里面再catch异常,BufferedReader为什么会有异常呢。
2.我可以一次只读取里面的一个字符吗,如果可以,要怎么做,可以读取一个字符并且定位到下一字符,比如我输入abc字符串,然后可以在不先把它作为字符串读出来的情况下直接读出字符a,并且下次再读字符就读字符b。(如果先读出字符串我就知道方法了,只是觉得要先读出字符串似乎多了一个步骤)
3.有什么办法判断我输入的是不是某个字母(不按回车),比如我在不按回车的情况下,想输入'y'就进入下一环节,否则一直输入,要怎么做到。先谢谢各位大虾了。在下很多不懂,所以也不知道java是否有上述2和3的功能,若有描述不清楚的地方请指出来。

解决方案 »

  1.   

    可以不用buffer缓冲 监控system.in流就是了 
      

  2.   

    1.因为 所有对流的操作 都是带异常的 .这个可以看 java的api那里面很详细
    2.先弄个数组 ,它有个read方法 把它读到数组里面 。在在数组里面 取第一个。
    3.你先要理解 io的机制。所有的解析流都是一次读入 放入缓存中,在取。如果你想要给你取的 强制限定长度,只有规定你接收数组的长度。并定义 标记,下次读的时候 在reaset(这个可能写错了) 继续读。
    4. 回车代表你一次输入的结束。 自己想想能行吗?