19 Stimmen

Wie initialisiert man ein Zeichenarray unter Verwendung von Zeichenliterale?

Die folgende Aussage funktioniert nicht in Java, aber in C:

char c[] = "abcdefghijklmn";

Was ist falsch?

Kann das char-Array nur wie folgt initialisiert werden?

char c[] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n'};

26voto

JB Nizet Punkte 654813

Sie könnten verwenden

char c[] = "abcdefghijklmn".toCharArray();

wenn es Ihnen nichts ausmacht, eine unnötige String zu erstellen.

Im Gegensatz zu C sind Strings Objekte und nicht nur Arrays von Zeichen.

Das gesagt, es ist ziemlich selten, char-Arrays direkt zu verwenden. Sind Sie sicher, dass Sie stattdessen eine String möchten?

11voto

assylias Punkte 308529

Sie können es von einem String initialisieren:

char[] c = "abcdefghijklmn".toCharArray();

Wenn Sie jedoch einen String benötigen, sollten Sie einfach einen String verwenden:

String s = "abcdefghijklmn";

2voto

Bobulous Punkte 12601

Das Wort "abcdefghijklmn" ist ein String-Objekt in Java. Du kannst dieses schnell in ein char-Array umwandeln, indem du die Methode String toCharArray() verwendest.

Versuch es mal:

char[] c = "abcdefghijklmn".toCharArray();

2voto

It's me Punkte 975

Versuchen Sie es mit:

String a = "abcdefghijklmn";   
char[] c = a.toCharArray();

2voto

typemike Punkte 23

Wenn Sie String toCharArray() nicht verwenden möchten, muss ein char-Array wie jedes andere Array initialisiert werden- char[] c = new char[] {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n'};

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X