for (int j =0; j < marks.size(); j++) {
analyzeTextArea.setText(j + marks.get(j));
}
上記のコードでは、次のエラーが表示されます。
required: java.lang.String found: int
for (int j =0; j < marks.size(); j++) {
analyzeTextArea.setText(j + marks.get(j));
}
上記のコードでは、次のエラーが表示されます。
required: java.lang.String found: int
私はmarks.get(j)
あなたに整数を与えると思います。そのため、 の値に のj + marks.get(j)
値を追加します。marks.get(j)
j
したがって、 の結果として Integer で終了しますj + marks.get(j)
。しかしsetText
、文字列を期待してください。
ニーズに応じて、いくつかの可能性があります。
analyzeTextArea.setText(Integer.toString(j + marks.get(j)));
setText
この場合でも、追加を行ってから、パラメーターの型を尊重するためにそれを String に変換します。
これとともに :
analyzeTextArea.setText("" + (j + marks.get(j)));
""
パラメータが文字列になることを示し、次に and を連結j
しmarks.get(j)
ます。たとえば、最初のループでは、0
ループで設定された最後の値のみが使用されるため、ループでの使用setText
はあまり意味がありません。おそらくJTextArea#append(String)を使用する必要があります。
次のようなことをする必要があります:
analyzeTextArea.setText("" + (j + marks.get(j)));
analyzeTextArea.setText(Integer.toString(j + marks.get(j)));
これを試して、
for (int j =0; j < marks.size(); j++) {
analyzeTextArea.setText(j + marks.get(j)+"");
}
これは機能するはずですが、.setText() の代わりに .append() を使用する必要があります。.setText() は以前の内容を削除して書き込むためです。しかし .append() は情報を追加するだけです