forループを使ってStringのすべての母音をcharに置き換えます。ライン上のエラーにJava:引数の左辺は変数charAtエラーでなければなりません。
public String replaceVowel(String text, char letter)
{
char ch;
for(int i = 0; i<text.length(); i++)
{
ch = text.charAt(i);
if(ch == 'a' || ch == 'e' || ch == 'i' || ch == 'o' || ch == 'u' || ch == 'y')
{
ch = letter;
}
text.charAt(i) = ch;
}
return text;
}
コード旅行:この行で
text.charAt(i) = ch;
私は、文字列のループの位置に文字を初期化しようとしています。ただし、次のようなエラーが表示されます。
The left-hand side of an assignment must be a variable
ご迷惑をおかけして申し訳ありません。
エラーを確認します。左側が譲受人、右側が譲渡価額です。 Char値に論理的にchar値を割り当てることはできません。あなたはそれをchar *変数に代入することを躊躇しました* – Li357
Javaの文字列は不変です。文字配列または['StringBuilder'](https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html#setCharAt-int-char-)を使用することができます。 – 4castle
'return text.replaceAll(" [aeiouy] "、String.valueOf(letter));' – 4castle