如果每行输入数组的一个数:
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
ArrayList al = new ArrayList();
String line = reader.readLine();
while(line != null) {
  al.add(new Double(line));
  line = reader.readLine();
}
int size = al.size();
double[] ret = new double[size];
for(int i=0;i<size;i++)
  ret[i]=((Double)al.get(i)).doubleValue();
如果以别的符号分割输入的数据,情况类似。

解决方案 »

  1.   

    没有直接的方法可以从键盘读入数字值,可以用类型包装器来转换,具体做法如下:
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    String s1;
    String s2;
    System.out.println("Enter a int data: ");
    s1 = br.readLine();
    int i = Integer.parseInt(s1);
    System.out.println("Enter a double data: ");
    s2 = br.readLine();
    double d = Double.parseDouble(s2);
    System.out.println("i = " + i);
    System.out.println("d = " + d);
      

  2.   

    JAVA都是从以String 的方式读进来数据,然后在对数据做转换;
    int i = Deouble.parseInt(s1);
      

  3.   

    按你们说的,就只能先输入字符串,再分解喽。还有用readLine()编译时总会报些错误,怎么解决?byte str[]=new byte[80];
    try{
    aa=System.in.read(str);
    }
    catch (Exception bb)
    {
    }
    String sss=new String(str);
    这样好不好?我是个java初学者,只学了一个晚上,还请多帮忙
    总感觉java用着没c++那么舒服...
      

  4.   

    只学了一晚上就来写I/O程序啊。java中的I/O是很庞大的一个系统。总的来说,它是依赖于流的:字节流和字符流。还是先好好看看书吧。
    用readLine()时都报什么错误了?我写的那段程序,我已经运行过了,没问题的。
      

  5.   

    不是这样的,我本来对java没什么兴趣,不过一个会计系的同学找我帮忙作他的java作业(清华就是变态,没学就要交作业),只好现学了,感觉还是比较容易的,就是细节的东西很多都不清楚,还请多帮忙阿
      

  6.   

    用你的方法也可以:
    byte str[]=new byte[80];
    System.in.read(str);
    String ss = new String(str);
    int i = Integer.parseInt(ss.trim());  //用trim()方法
    System.out.println(i);