なぜ私はこれを行うことができませんでしたか、どうすれば CPP のようにできますか?
public static void main(String args[])
{
String n = "ABCDEFG";
for(int i=0;i<n.length();i++){
System.out.println(n[i]);
}
}
コンパイルすると、「式の型は配列型でなければなりませんが、文字列に解決されました」と表示されました。
関数を使用してcharAta の文字にアクセスしますString。MrSmith42 が言及しているように、[]演算子のオーバーロードは C++ では可能ですが、Java では可能ではstd::stringありませんString
System.out.println(n.charAt(i));
Stringは配列ではないためです。
ただし、char配列に変換して、次のように foreach ループを使用して循環させることができます。
for (char c: n.toCharArray())
System.out.println(c);
Java は、C++ のように演算子のオーバーロードを許可しません。したがって、[] 演算子は文字列では使用できません。
System.out.println(n.charAt(i);
Stringオブジェクトは、C++ のような演算子のオーバーロードをサポートしていません。あなたが使用することができます
System.out.println(n.charAt(i));