急!!急!!急!!java上给数组赋值所取得的值与第一个元素的值一样

来源:百度知道 编辑:UC知道 时间:2024/06/07 04:42:31
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int a[]=new int[5];
for(int i=0;i<=4;i++)
{
a[i]=Integer.parseInt(br.readLine());
System.out.print(a[i]);
}
如果输入1 2 3 4 5
则输出1 1 1 1 1
怎么回事啊,我用的开发工具是jcreator!!

方法的问题,br.readLine()这个方法是每次读一行(返回一个字符串),而不是一个字符。

如果你文件源(System.in)写的是1 2 3 4 5,读出一行后的字符串被你用Integer.parseInt转换成Int,你想想把"1 2 3 4 5"转换成int他只能存下一个
1,因为每次都是读一行,所以循环5次都是1。

1 2 3 4 5 <Enter>
???

没有问题,运行结果正常

(br.readLine());
这里有问题吧···