如何在JTextArea中显示整数数组?

时间:2012-05-26 17:36:27

标签: java swing compiler-errors jtextarea

for (int j =0; j < marks.size(); j++) {
    analyzeTextArea.setText(j + marks.get(j));
}

上面的代码给出了以下错误:

required: java.lang.String found: int

5 个答案:

答案 0 :(得分:3)

我猜marks.get(j)给你一个整数。因此,当您执行j + marks.get(j)时,您会将marks.get(j)的值添加到j的值中。

所以你以j + marks.get(j)的结果以一个整数结尾。但是setText期待一个字符串。

根据您的需要,您现在有几种可能性。

analyzeTextArea.setText(Integer.toString(j + marks.get(j)));

此案例仍会进行添加,然后将其转换为String以尊重setText参数类型。

有了这个:

analyzeTextArea.setText("" + (j + marks.get(j)));

""告诉参数将是一个字符串,然后您将连接jmarks.get(j)。因此,例如,对于第一个循环,您将拥有以0

开头的内容

现在在循环中使用setText并没有多大意义,因为只使用循环中设置的最后一个值,你可能应该使用JTextArea#append(String)

答案 1 :(得分:2)

你需要做这样的事情:

analyzeTextArea.setText("" + (j + marks.get(j)));

答案 2 :(得分:1)

analyzeTextArea.setText(Integer.toString(j + marks.get(j)));

答案 3 :(得分:1)

试试这个,

for (int j =0; j < marks.size(); j++) {
    analyzeTextArea.setText(j + marks.get(j)+"");
    }

答案 4 :(得分:1)

这应该有效但不是.setText(),你应该使用.append()。因为.setText()删除以前的内容并写入。但.append()只是增加了信息