1. ホーム
  2. java

[解決済み】予期しない型エラー

2022-01-29 23:19:30

質問

私はJavaの初心者です。文字列について勉強していますが、文字列を反転させたいと思います。以下は私のコードです。

String myStr = "abcdef"; String reversed = "";
for(int j=myStr.length()-1;j>=0;j--) {
    myStr.charAt(j) += reversed;
}

しかし、エラーメッセージが表示されます。

****.java:14: error: unexpected type
required: variable
found:    value

しかし、それを System.out.print(reversed) と表示されます。 reversed を正しく表示します。変数と値の違いは何ですか?エラーメッセージが出るのに、なぜ正しい答えが出るのですか?ご回答よろしくお願いします。

どのように解決するのですか?

問題はここです。

myStr.charAt(j) += reversed;

左側は値です。変数ではありません。そのため += を追加します。


難しい方法を学ぶという目的から外れてしまいますが、このようにすることも可能です。

myStr = new StringBuffer(myStr).reverse().toString();