codestory

Die Anleitung zu Java Array

  1. Was ist Array?
  2. Ein eindimensionales Array
  3. Ein eindimensionales Array und die Schleife for-each
  4. Die Utility-Methode für ein eindimensionales Array
  5. Das zweidimensionale Array

1. Was ist Array?

Im Java ist Array eine Kollektion der Elementen, die die gleichen Datentypen und die consecutive Addresse in dem Speicher (memory) haben. Array mit den bestimmten Elementen und Sie können ihre Größe nicht verändern
Die Elemente des Array werden ab die Index 0 indiziert. Sie können in ihrem Elemente durch Index zugreifen
Sehen Sie ein Array mit 5 Elemente, die aus int-Zahlen bestehen
Außer des eindimensionalen Array müssen Sie manchmals mit dem zweidimensionalen oder mehrdimensionalen Array arbeiten. Ein zweidimensionalen Array: seine Elemente werden 2 Index, (die Index Zeile und die Index Spalte) gemarkiert. Unten ist das das Bild des zweidimensionalen Array

2. Ein eindimensionales Array

Wie melden Sie ein Array in Java ein
** Syntax **
// Ein Array verzollen, die Anzahl der Elemente nicht bestimmen.
int[] array1;

// Ein Array mit 100 Elemente initializieren
// Die Elemente werden die bestimmte Wert nicht angewiesen
array1 = new int[100];

// Ein Array mit der bestimmten Anzahl der Elemente erklären
// Die Elemente werden die bestimmte Wert nicht angewiesen
double[] array2 = new double[10];

// Ein Array mit der Elemente, die die Wert angewiesen werden.
// Der Array hat 4 Elemente
long[] array3= {10L, 23L, 30L, 11L};
Sehen Sie ein Beispiel:
ArrayExample1.java
package org.o7planning.tutorial.javabasic.array;

public class ArrayExample1 {

	public static void main(String[] args) {

		// Ein Array mit 5 Elemente erklären
		int[] myArray = new int[5];

		// Achtung: das erste Element des Array hat die Index 0:
		// Die Wert für das erste Element anweisen (die Index 0)
		myArray[0] = 10;

		// Die Wert für das 2. Element anweisen (die Index 1)
		myArray[1] = 14;

		myArray[2] = 36;
		myArray[3] = 27;

		// Die Wert für das 5. Element anweisen (das letzte Elemente im Array)
		myArray[4] = 18;

		// Die Anzahl der Arrayelemente auf dem Bildschirm Console ausdrucken.
		System.out.println("Array Length=" + myArray.length);

		// Das Element in der Index 3 ausdrucken (das 4. Element des Array)
		System.out.println("myArray[3]=" + myArray[3]);

		// Die Schleife for benutzen um die Element im Array auszudrucken
		for (int index = 0; index < myArray.length; index++) {
			System.out.println("Element " + index + " = " + myArray[index]);
		}
	}

}
Das Ergebnis
Array Length=5
myArray[3]=27
Element 0 = 10
Element 1 = 14
Element 2 = 36
Element 3 = 27
Element 4 = 18
Ein weiteres Beispiel stellt ein Schleife for für die Ernennung des Wert der Elemente dar
ArrayExample2.java
package org.o7planning.tutorial.javabasic.array;

public class ArrayExample2 {

	public static void main(String[] args) {

		// Ein Array mit 5 Element erklären
		int[] myArray = new int[5];

		// Auf dem Bildschirm Console die Anzahl der Elemente des Array ausdrucken.
		System.out.println("Array Length=" + myArray.length);

		// Die Schleife for benutzen um die Wert für die Elemente des Array anzuweisen.
		for (int index = 0; index < myArray.length; index++) {
			myArray[index] = 100 * index * index + 3;
		}

		// Auf dem Bildschirm das Element des Index 3 ausdrucken
		System.out.println("myArray[3] = " + myArray[3]);
	}

}
das Ergebnis
Array Length=5
myArray[3] = 903

3. Ein eindimensionales Array und die Schleife for-each

Java 5 bietet Sie eine Schleife for-each, die Ihnen bei dem Durchlaufen (traverse) aller Elementen des Array ohne die Verwendung einer Index Variable hilft .
Zum Beispiel
ArrayForeachExample.java
package org.o7planning.tutorial.javabasic.array;

public class ArrayForeachExample {

	public static void main(String[] args) {

		// Ein Array von String deklarieren.
		String[] fruits = new String[] { "Apple", "Apricot", "Banana" };

		// Die Schleife for-each benutzen um die Elementen des Array durchzulaufen
		for (String fruit : fruits) {

			System.out.println(fruit);

		}

	}

}
Das Beispiel durchführen
Apple
Apricot
Banana

4. Die Utility-Methode für ein eindimensionales Array

Achtung: Sie brauchen vor dem Lesen des Artikel die Kenntnisse über die Klasse und die Methoder . Wenn nicht, ignorieren Sie ihn.
Java bietet Sie einigen statischen Methode für Array, zum Beispiel die Aufgliederung des Array, die Zuweisung der Wert für die Elementen des Array, die Findung oder den Vergleich des Array ... Diese Methode werden in der Klasse Arrays definiert.
Unten gibt es einige statischen Methode, die sehr nutzlich und in der Klasse Arrays definiert werden. Diese Methode werden für die Array der Elementen mit dem Typ vom byte, char, double, float, long, int, short, boolean angewendet
Mehr sehen
  • Die Anleitung zu Java Arrays
* Arrays *
// Die Parameter mit dem gleichen Typ übertragen und eine Liste zurückgeben.
public static <T> List<T> asList(T... a)

// Das Typ von X kann sein : byte, char, double, float, long, int, short, boolean
----------------------

// Die Index einer Wert, die im Array auftreten, finden.
// (den Algorithmus zur binären Suchen (binary search) benutzen)
public static int binarySearch(X[] a, X key)

// Die Elementen eines Array kopieren um ein neues Array mit der bestimmten Länge zu erstellen.
public static int[] copyOf(X[] original, X newLength)

// Ein bestimmter Bereich des Elementen des Array kopieren um ein neuer Array zu erstellen 
public static double[] copyOfRange(X[] original, int from, int to)

// Der Vergleich zwischen 2 Array
public static boolean equals(X[] a, long[] a2)

// Eine gleiche Wert für alle Elementen des Array übertragen.
public static void fill(X[] a, X val)

// Ein Array zum String umwandeln 
public static String toString(X[] a)
Das folgende Beispiel benutzt einige Utility Methode der Klasse Arrays.
ArraysExample.java
package org.o7planning.tutorial.javabasic.array;

import java.util.Arrays;
import java.util.List;

public class ArraysExample {

	public static void main(String[] args) {

		int[] years = new int[] { 2001, 1994, 1995, 2000, 2017 };

		// aufgliedern
		Arrays.sort(years);

		for (int year : years) {
			System.out.println("Year: " + year);
		}

		// Ein Array zu einem String umwandeln
		String yearsString = Arrays.toString(years);

		System.out.println("Years: " + yearsString);

		// Eine Liste aus einige Wert erstellen.
		List<String> names = Arrays.asList("Tom", "Jerry", "Donald");

		for (String name : names) {
			System.out.println("Name: " + name);
		}

	}

}
Year: 1994
Year: 1995
Year: 2000
Year: 2001
Year: 2017
Years: [1994, 1995, 2000, 2001, 2017]
Name: Tom
Name: Jerry
Name: Donald

5. Das zweidimensionale Array

Sehr häufig sollen Sie mit einem Array arbeiten, regelmäßig mit einem eindimensionalen Array. Allerdings falls Sie ein Daten mit dem Tabelle-Typ (viele Zeile und viele Spalte) arbeiten möchten, soll das zweidimensionale Array benutzt werden. Zum Beispiel: Das zweidimensionale Array hilft Ihnen bei der Speicherung der Information der Schachfiguren auf einem Schachbrett
Die Zeile und die Spalte des zweidimensionalen Array werden die Index 0, 1, 2,....gemarkiert. Um in einem Element des zweidimensionalen Array zuzugreifen sollen Sie nach 2 Index : Zeile-index und Spalte-index zugreifen
length ist ein Property des Array. Im Fall vom zweidimensionalen Array ist das Property die Anzahl der Zeile des Array
Sie haben 3 Optionen zur Deklarierung eines zweidimensionalen Array
// Ein Array mit 5 Zeile und 10 Spalte deklarieren 
MyType[][] myArray1 = new MyType[5][10]; 

// Ein zweidimensionales Array mit 5 Zeile deklarieren .
// (Array vom Array)
MyType[][] myArray2 = new MyType[5][]; 

// Ein zweidimensionalen Array deklarieren, die Wert von Elemente bestimmen .
MyType[][] myArray3 = new MyType[][] {

    { value00, value01, value02 , value03 }, 
    { value10, value11, value12 } 
};

// ** Achtung:
// MyType kann das primitive Typ sein (byte, char, double, float, long, int, short, boolean)
// oder das Referenztyp
Wenn Sie ein Array mit dem primitiven Typ (byte, char, double, float, long, int, short, boolean) deklarieren. Die Elemente werden die Wert nicht bestimmt. Sie haben die Standardwert
  • Die Standardwert 0 entspricht dem Typ vom byte, double, float, long, int, short.
  • Die Standardwert false entspricht dem Typ vom boolean.
  • Die Standardwert '\u0000' (null Zeichen) entspricht dem Typ vom char.
Umgekehrt wenn Sie ein Array mit dem Referenztyp deklarieren, wenn ein Element des Array die Wert nicht bestimmt wird, wird es die Standardwert null haben.
Zum Beispiel
TwoDimensionalExample1.java
package org.o7planning.tutorial.javabasic.array;

public class TwoDimensionalExample1 {

	public static void main(String[] args) {

		// Ein zweidimensionales Array mit 2 Zeile, 3 Spalte deklarieren
		// Die Elemente haben die Standardwert
		int[][] myArray = new int[2][3];
		
		// Die Zeile des zweidimensionalen Array.
		System.out.println("Length of myArray: "+ myArray.length); // ==> 2

		// Print out
		for (int row = 0; row < 2; row++) {

			for (int col = 0; col < 3; col++) {
				System.out.println("myArray[" + row + "," + col + "]=" + myArray[row][col]);
			}
		}
		System.out.println(" --- ");

		// Die Wert für die Elemente übertragen
		for (int row = 0; row < 2; row++) {

			for (int col = 0; col < 3; col++) {
				myArray[row][col] = (row + 1) * (col + 1);
			}
		}

		// Print out
		for (int row = 0; row < 2; row++) {

			for (int col = 0; col < 3; col++) {
				System.out.println("myArray[" + row + "," + col + "]=" + myArray[row][col]);
			}
		}

	}

}
Length of myArray: 2
myArray[0,0]=0
myArray[0,1]=0
myArray[0,2]=0
myArray[1,0]=0
myArray[1,1]=0
myArray[1,2]=0
 ---
myArray[0,0]=1
myArray[0,1]=2
myArray[0,2]=3
myArray[1,0]=2
myArray[1,1]=4
myArray[1,2]=6
Das zweidimensionale Array ist wirklich ein Array vom Array
Im Java ist das zweidimensionale Array wirklich ein Array vom Array. Deshalb können Sie durch die Festlegung der Zeile, ohne die Festlegung der Spalte ein zweidimensionales Array deklarieren. Denn das zweidimensionale Arryist Array vom Array, so gibt das Attribut length des zweidimensionalen Array die Anzahl der Zeile des Array zurück
TwoDimensionalExample2.java
package org.o7planning.tutorial.javabasic.array;

public class TwoDimensionalExample2 {

	public static void main(String[] args) {

		// Ein zweidimensionales Array deklarieren, die Elemente des Array bestimmen 
		String[][] teamAndPlayers = new String[][] { 
			    { "Sam", "Smith", "Robert" }, // US Players
				{ "Tran", "Nguyen" }          // Vietnam Players
		};

		String[] usPlayers = teamAndPlayers[0];
		String[] vnPlayers = teamAndPlayers[1];
		
		System.out.println("Team count: " + teamAndPlayers.length); // ==> 2

		System.out.println("Us Players count:" + usPlayers.length); // ==> 3
		System.out.println("Vn Players count:" + vnPlayers.length); // ==> 2

		for (int row = 0; row < teamAndPlayers.length; row++) { 

			String[] players = teamAndPlayers[row];

			for (int col = 0; col < players.length; col++) {
				System.out.println("Player at[" + row + "][" + col + "]=" + teamAndPlayers[row][col]);
			}

		}

	}
}
Team count: 2
Us Players count:3
Vn Players count:2
Player at[0][0]=Sam
Player at[0][1]=Smith
Player at[0][2]=Robert
Player at[1][0]=Tran
Player at[1][1]=Nguyen
Zum Beispiel
TwoDimensionalExample3.java
package org.o7planning.tutorial.javabasic.array;

public class TwoDimensionalExample3 {

	public static void main(String[] args) {

		// Ein zweidimensionales Array deklarieren (Array vom Array)
		// Es gibt 2 Zeile 
		String[][] teamAndPlayers = new String[2][];
		
		// US Players
		teamAndPlayers[0] = new String[]{ "Sam", "Smith", "Robert" };
		
		// Vietnam Players
		teamAndPlayers[1] = new String[]{ "Tran", "Nguyen" };
	 
  
		for (int row = 0; row < teamAndPlayers.length; row++) { 

			String[] players = teamAndPlayers[row];

			for (int col = 0; col < players.length; col++) {
				System.out.println("Player at[" + row + "][" + col + "]=" + teamAndPlayers[row][col]);
			}

		}

	}
}
Player at[0][0]=Sam
Player at[0][1]=Smith
Player at[0][2]=Robert
Player at[1][0]=Tran
Player at[1][1]=Nguyen

Java Grundlagen

Show More