Wie deklariere und initialisiere ich ein Array in Java?
Antworten
Zu viele Anzeigen?Deklarieren und Initialisieren für Java 8 und höher. Erstellen Sie ein einfaches Integer-Array:
int [] a1 = IntStream.range(1, 20).toArray();
System.out.println(Arrays.toString(a1));
// Output: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
Erstellen Sie ein Zufallsfeld für ganze Zahlen zwischen [-50, 50] und für Paschas [0, 1E17]:
int [] a2 = new Random().ints(15, -50, 50).toArray();
double [] a3 = new Random().doubles(5, 0, 1e17).toArray();
Zweierpotenzierte Sequenz:
double [] a4 = LongStream.range(0, 7).mapToDouble(i -> Math.pow(2, i)).toArray();
System.out.println(Arrays.toString(a4));
// Output: [1.0, 2.0, 4.0, 8.0, 16.0, 32.0, 64.0]
Für String[] müssen Sie einen Konstruktor angeben:
String [] a5 = Stream.generate(()->"I will not squeak chalk").limit(5).toArray(String[]::new);
System.out.println(Arrays.toString(a5));
Mehrdimensionale Arrays:
String [][] a6 = List.of(new String[]{"a", "b", "c"} , new String[]{"d", "e", "f", "g"})
.toArray(new String[0][]);
System.out.println(Arrays.deepToString(a6));
// Output: [[a, b, c], [d, e, f, g]]
Um Arrays der Klasse Objects zu erstellen, können Sie die java.util.ArrayList
. um ein Array zu definieren:
public ArrayList<ClassName> arrayName;
arrayName = new ArrayList<ClassName>();
Weisen Sie dem Array Werte zu:
arrayName.add(new ClassName(class parameters go here);
Aus dem Array lesen:
ClassName variableName = arrayName.get(index);
Anmerkung:
variableName
ist ein Verweis auf das Array, was bedeutet, dass die Manipulation variableName
wird manipulieren arrayName
für Schleifen:
//repeats for every value in the array
for (ClassName variableName : arrayName){
}
//Note that using this for loop prevents you from editing arrayName
for-Schleife, die es Ihnen ermöglicht, die arrayName
(herkömmliche for-Schleife):
for (int i = 0; i < arrayName.size(); i++){
//manipulate array here
}
Ein Array hat zwei Grundtypen.
Statisches Array: Array mit fester Größe (seine Größe sollte zu Beginn angegeben werden und kann später nicht mehr geändert werden)
Dynamisches Array: Eine Größenbeschränkung ist dabei nicht vorgesehen. (Reine dynamische Arrays gibt es in Java nicht, stattdessen wird List bevorzugt).
Um ein statisches Array von Integer, String, Float, etc. zu deklarieren, verwenden Sie die folgenden Deklarations- und Initialisierungsanweisungen.
int[] intArray = new int[10];
String[] intArray = new int[10];
float[] intArray = new int[10];
// Here you have 10 index starting from 0 to 9
Um dynamische Funktionen zu nutzen, müssen Sie List verwenden... Liste ist rein dynamisches Array und es ist nicht notwendig, die Größe zu Beginn anzugeben. Im Folgenden finden Sie die korrekte Art und Weise, eine Liste in Java zu deklarieren -
ArrayList<String> myArray = new ArrayList<String>();
myArray.add("Value 1: something");
myArray.add("Value 2: something more");