JTextAreaからの入力に2つの特定の文字列を取得する簡単なプログラムを作成しています。非整数の文字列を見つけてから整数を見つける必要があります。同じ非整数文字列から一致するすべての値が追加され、結果がJTextFieldに表示されます。以下の例のように、「斧」が一緒に追加される一致し、最終的な結果は、ラベルの下texfieldに表示されるすべての数字「AXボックス」(25 + 5 = 30)Java - JTextAreaで特定の文字列を見つける
私の次のコード:
JTextField ax, bx, cx, dx;
int totalAX, totalBX, totalCX, totalDX;
String[] lines = textArea.getText().split("\\n"); // split lines
System.out.println(Arrays.toString(lines)); // convert each line to string
for (int i = 0; i < lines.length; i++) {
if (lines.contains("ax") {
// add each numbers.
// for example, 25 + 5
totalAX = totalAX + i;
ax.setText("Total: " +totalAX);
}
}
私の問題は、プログラムがサブ「斧」ように、「BX」などを見つけることができないということです。これで最善のアプローチは何ですか?スレッド内
例外「AWT-EventQueueの-0」java.lang.NumberFormatException:入力文字列の場合:「斧」
このコードは 'lines.contains(" ax ")'という行のためにコンパイルしないでください。 'lines'変数は配列であり、' contains'メソッドはありません。 – ahoxha
'totalAX'も間違って計算されています。あなたがそれをやっているやり方では、 '' ax ''文字列を含む行の数だけを数えます(' lines [i] .contains( "ax") '' lines.contains( " ax ")' – ahoxha