这错在哪儿?望各位帮忙

来源:百度知道 编辑:UC知道 时间:2024/05/16 10:28:07
1 各位大哥帮一下忙,帮我看看错在哪儿?怎么修改
import java.io.*;
class paixu
{
public static void main(String[] args)throws IOException
{
BufferedReader br=
new BufferedReader(new InputStreamReader(System.in));
String str;
int i,x[]=new int[10];
System.out.print("请输入10个整数:");
for(i=0;i<10;i++)
str=br.readLine();
x[i]=Integer.parseInt(str);

for(i=9;i>-1;i--)
System.out.println(10-i+":"+x[i]);
}
}
提示的错误信息

G:\javacaogao>javac paixu.java
paixu.java:13: 可能尚未初始化变量 str
x[i]=Integer.parseInt(str);
^
1 错误
对str初始化了,或者按照其他同志所说的方法,都得不到结果,
提示错误信息

请输入10个整数:0 1 2 3 4 5 6 7 8 9
Exception in thread "main" java.lang.NumberFormatException: For input string: "0
1 2 3 4 5 6 7 8 9"
at

哈哈 新手把
str=br.readLine(); 是bufferedReader流 读取文本行的方法 所以上面你就理解错了
所以要用到StringTokenizer类 分析字符串
具体程序如下 我已经运行过了 没问题
学JAVA程序 不想C一样 关键要总体把握 因为他是面向对象编程的 要把握大的方向 这就体现在类的定义与实现
我也是初学者 望共同进步 加油!
import java.io.*;
import java.util.*;
class paixu
{
String s[]=new String [10];
BufferedReader br=
new BufferedReader(new InputStreamReader(System.in));
String str;
int i=0,x[]=new int[10];
public void input()
{ System.out.print("请输入10个整数: 用空格做两数字的分隔符");
try {str=br.readLine();
StringTokenizer tokenizer=new StringTokenizer (str," ");
while(tokenizer.hasMoreTokens())
{s[i]=tokenizer.nextToken();
x[i]=Integer.parseInt(s[i]);
i++;
}
} catch (IOException ex) {
ex.printStackTrace();
}
for(i=9;i>-1;i