次のステートメントはJavaでは機能しませんが、Cでは機能します。
char c[] = "abcdefghijklmn";
どうしたの?
char配列は次のようにのみ初期化できますか?
char c[] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n'};
あなたが使うことができます
char c[] = "abcdefghijklmn".toCharArray();
不要な文字列を作成してもかまわない場合。
Cとは異なり、文字列はオブジェクトであり、文字の配列だけではありません。
とはいえ、char配列を直接使用することは非常にまれです。代わりに文字列は必要ありませんか?
文字列から初期化できます。
char[] c = "abcdefghijklmn".toCharArray();
ただし、必要なのが文字列である場合は、単に文字列を使用する必要があります。
String s = "abcdefghijklmn";
リテラル「abcdefghijklmn」は、JavaのStringオブジェクトです。String toCharArray()メソッドを使用すると、これをchar配列にすばやく変換できます。
これを試して:
char[] c = "abcdefghijklmn".toCharArray();
これを試して:
String a = "abcdefghijklmn";
char[] c = a.toCharArray();
String toCharArray()を使用したくない場合は、はい、char配列は他の配列と同じように初期化する必要があります-char[] c = new char[] {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n'};