2530 Stimmen

Wie deklariere und initialisiere ich ein Array in Java?

Wie deklariere und initialisiere ich ein Array in Java?

34voto

Amit Bhandari Punkte 501

Im Folgenden wird die Deklaration eines Arrays gezeigt, aber das Array ist nicht initialisiert:

 int[] myIntArray = new int[3];

Im Folgenden werden die Deklaration sowie die Initialisierung des Arrays gezeigt:

int[] myIntArray = {1,2,3};

Im Folgenden wird nun auch die Deklaration sowie die Initialisierung des Arrays gezeigt:

int[] myIntArray = new int[]{1,2,3};

Aber diese dritte zeigt die Eigenschaft der anonymen Array-Objekt-Erstellung, die durch eine Referenzvariable "myIntArray" gezeigt wird, also wenn wir nur "new int[]{1,2,3};" schreiben, dann ist dies, wie anonyme Array-Objekt erstellt werden kann.

Wenn wir nur schreiben:

int[] myIntArray;

Dies ist keine Deklaration eines Arrays, aber die folgende Anweisung macht die obige Deklaration vollständig:

myIntArray=new int[3];

29voto

Thomas Owens Punkte 110966

Alternativ dazu,

// Either method works
String arrayName[] = new String[10];
String[] arrayName = new String[10];

Das deklariert ein Array namens arrayName der Größe 10 (Sie haben die Elemente 0 bis 9 zu verwenden).

28voto

Dave Punkte 12858

Für den Fall, dass Sie etwas Dynamischeres wünschen, gibt es auch die Listenschnittstelle. Diese ist zwar nicht so leistungsfähig, dafür aber flexibler:

List<String> listOfString = new ArrayList<String>();

listOfString.add("foo");
listOfString.add("bar");

String value = listOfString.get(0);
assertEquals( value, "foo" );

18voto

codecubed Punkte 730

Es gibt im Wesentlichen zwei Möglichkeiten, ein Array zu erstellen:

Diese für ein leeres Feld:

int[] array = new int[n]; // "n" being the number of spaces to allocate in the array

Und diese hier für ein initialisiertes Array:

int[] array = {1,2,3,4 ...};

Sie können auch mehrdimensionale Arrays erstellen, etwa so:

int[][] array2d = new int[x][y]; // "x" and "y" specify the dimensions
int[][] array2d = { {1,2,3 ...}, {4,5,6 ...} ...};

16voto

Oleksandr Pyrohov Punkte 13894

In Java 9

Verwendung verschiedener IntStream.iterate y IntStream.takeWhile Methoden:

int[] a = IntStream.iterate(10, x -> x <= 100, x -> x + 10).toArray();

Out: [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]

int[] b = IntStream.iterate(0, x -> x + 1).takeWhile(x -> x < 10).toArray();

Out: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

In Java 10

Die Verwendung des Inferenz lokaler Variablentypen :

var letters = new String[]{"A", "B", "C"};

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