我在学java时被数据的输入搞得有点晕,类太多了,拿不清怎样用。
特别是字符的输入和字符串的输入,我都以输入数组类型来学习
我是这样写的,错了的话或者有更好的办法请告诉:import java.io.*;
public class input3
{
public static void main(String[] args) throws IOException
{
char[] n = new char[6];
int i;
InputStreamReader reader = new InputStreamReader(System.in);
BufferedReader input = new BufferedReader(reader);
System.out .println ("请输入6个数:");
for (i = 0; i < n.length; i++)
{
n[i] =  (char)System.in.read();/*这一步?比如说我是输入一个字母后,按一次空格键,本次的空格键侄赋给下个
    数组元素,我该怎样清楚这个缓冲*/ }
for(i = 0 ;i< n.length ;i++)
{
System.out.print (n[i]);
}

}
}
对字符的输入有什么更好的办法?
而字符串的输入我用的是 n[i] =  input.readLine();
整型我用的是Scanner()类。
可不可以对整型,字符和字符串的输入用同个类?

解决方案 »

  1.   

    可以呀  你可以用
    BufferedReaderReader.readLine();读出该行数据,再进行数据处理就OK了
    像你这样的:
    String str =BufferedReaderReader.readLine();
    再将str转换成char[]数组,怎么转换你应该会吧!!!还有,楼主你也太抠门了吧  问个问题才三分,,,真搞。
      

  2.   

    import java.util.*;
    class e
    {
    public static void main(String[]args){
    Scanner a=new Scanner(System.in);
    String m=a.nextLine();//输入字符串,有空格的//int m=a.nextInt();输入整型
    System.out.println(m);//String m=a.next();空格则停
    }//double m=a.nextDouble()
    }
      

  3.   

    恩 都比我的简洁--
    回:大海的力量
    String   str   =BufferedReaderReader.readLine();
    如果都这样来求所需的字符,效率不是低了很多吗?
    回:天字一号耶稣
    恩 好方法,但是要得到一个字符呢?有没有像C那样,所输即所得?
      

  4.   

    BufferedReaderReader.readLine();
    可不是静态方法哟~~还有如果我:1.char c1 = System.in.read()
              2./?????????
                怎样清除空格键,因为下句是给c2赋值;
                就像C里的fflush();
              3.char c2 = System.in.read();  第2句怎样来处理???
      

  5.   

    BufferedReaderReader.readLine();
    可不是静态方法哟~~还有如果我:1.char c1 = System.in.read()
              2./?????????
                怎样清除空格键,因为下句是给c2赋值;
                就像C里的fflush();
              3.char c2 = System.in.read();  第2句该怎样来处理呢?