Illegal start of expression bei array übergabe

Hallo

Wenn ich ein Array direkt an eine Methode übergeben z.B.

object.method( {1,2,a,b,c} );

gibt mir der Java Compiler „Illegal Start of Expression zurück“;

Wenn ich ein 2-dimensionales Array auf diese Weise erzeugen will ebenso:

short[][] my\_array = new short[8][];
my\_array[0] = {1,2,3};

Grüße
Fabian

Moin

Wenn ich ein Array direkt an eine Methode übergeben z.B.

object.method( {1,2,a,b,c} );

gibt mir der Java Compiler „Illegal Start of Expression
zurück“;

Die Notation darf mal nur beim Anlegen von Variabeln ausserhalb von Methoden verwenden. Innerhalb von Methoden musst du wohl oder übel mit was anderem arbeiten.

cu

Danke, und warum klappt das zweite Beispiel nicht?

Gruß
Fabian

Danke, und warum klappt das zweite Beispiel nicht?

Das ist doch auch innerhalb einer Methode, oder ? wenn nicht:

short[][] my\_array = {{1,2,3},{},{},{},{},{}};

Musst evtl noch die Werte nach short casten…

cu

short[][] my_array = new short[8][];
my_array[0] = {1,2,3};

Hallo, du musst das so machen

 short[][] my\_array = new short[8][];
 my\_array[0] = new short[] {1,2,3};

Grüße
Bruno