Heim > Java > javaLernprogramm > 3D-Arrays in Java

3D-Arrays in Java

WBOY
Freigeben: 2024-08-30 15:27:26
Original
1253 Leute haben es durchsucht

Bevor wir 3D-Arrays in Java verstehen, sollten wir wissen, was das Array ist und warum es in Programmiersprachen verwendet wird. Arrays sind im Grunde eine Gruppe ähnlicher Wertetypen, die mit demselben Namen bezeichnet werden. Mit ähnlichem Typ meinen wir die Werte desselben Datentyps. Stellen Sie sich eine Situation vor, in der wir die Namen aller Schüler einer Klasse speichern möchten. Da der Name des Schülers vom Datentyp „String“ ist, wäre es falsch, den Namen jedes Schülers in einer anderen Variablen zu speichern, da dies nicht nur viel Platz beanspruchen würde, sondern auch Verwirrung in einem Programm stiften würde, indem es fast den gleichen Wert erhöht Codezeilen. Um solche Situationen zu bewältigen, werden Arrays verwendet. Der Programmierer kann ein Array von Studentennamen erstellen und seine Größe zum Zeitpunkt der Array-Objekterstellung angeben. Auf diese Weise wäre es nicht nötig, den Variablennamen für jeden Schülernamen anzugeben, und wann immer wir die Werte aktualisieren, einfügen und abrufen möchten, können Indizes dieses Arrays verwendet werden.

In Java wird eine Array-Variable ähnlich wie die anderen Variablen mit dem Zeichen [] nach dem Datentyp deklariert. Die Array-Größe muss zum Zeitpunkt der Array-Erstellung definiert werden und bleibt konstant. Auf Array-Elemente wird über die numerischen Indizes zugegriffen, wobei das erste Element bei 0 Indizes gespeichert wird. Grundsätzlich gibt es in Java zwei Arten von Arrays, nämlich eindimensionale und mehrdimensionale Arrays. 3D-Arrays fallen in die Kategorie der mehrdimensionalen Arrays. Mehrdimensionale Arrays können in einfachen Worten als Array von Arrays definiert werden, und 3D-Arrays sind Arrays aus 2D-Arrays. 3D ist eine komplexe Form mehrdimensionaler Arrays. Stellen Sie sich ein Szenario mit Wohnungen in einem Gebäude vor. Angenommen, die Wohnung hat 10 Etagen und jede Etage verfügt über 5 Wohnungen und jede Wohnung über 3 Zimmer. Um diese Daten in der Programmierung zu verarbeiten, werden 3D-Arrays verwendet.

WERBUNG Beliebter Kurs in dieser Kategorie JAVA MASTERY - Spezialisierung | 78 Kursreihe | 15 Probetests

Wie werden 3D-Arrays in Java definiert?

Java verwendet eine sehr einfache Methode zum Definieren der Arrays. Eckige Klammern („[ ]“) werden verwendet, um das Array-Objekt nach dem Datentyp des Arrays zu definieren. Man muss die Größe zum Zeitpunkt der Deklaration des Arrays definieren. 3D-Arrays werden mit drei Klammern definiert. Nachfolgend finden Sie die Syntax zum Definieren der 3D-Arrays in Java:

Data_type array_name[ ] [ ] [ ] = new array_name[a][b][c];
Nach dem Login kopieren
  • Hier data_type: Datentyp der Elemente, die im Array gespeichert werden. array_name: Name des Arrays
  • neu: Schlüsselwort zum Erstellen eines Objekts in Java
  • a, b, c: enthält die numerischen Werte für die verschiedenen Dimensionen.

Syntax:

int [ ] [ ] [ ] arr = new int [10][4][3];
Nach dem Login kopieren

Im obigen Beispiel können maximal 10x4x3 = 120 Elemente im Array „arr“ gespeichert werden.

Wie erstelle ich 3D-Arrays und füge Werte in sie in Java ein?

Das Erstellen von 3D-Arrays in Java ist genauso einfach wie das Erstellen von 1D- und 2D-Arrays. Wie oben erwähnt, ist es wichtig, die Größe eines Arrays zum Zeitpunkt der Deklaration zu definieren. Das Erstellen von 3D-Arrays erfordert einen weiteren Schritt der Übergabe/Eingabe von Werten in Form eines Arrays aus 2D-Arrays. Wir können die Größe eines Arrays definieren und die Werte anschließend einfügen/eingeben, oder wir können die Werte direkt in einem Array übergeben. Die Art und Weise der in 3D-Arrays definierten Werte ist unten angegeben:

Syntax

data_type[][][] arr_name =
{
{
{Array1Row1Col1,Array1Row1Col2,....},
{Array1Row2Col1, Array1Row2Col2, ....}
},
{
{Array2Row1Col1, Array2Row1Col2, ....},
{Array2Row2Col1, Array2Row2Col2, ....}
}
}
Nach dem Login kopieren

Code

int num_array [ ] [ ] [ ] = {
{
{10 ,20 ,99},
{30 ,40 ,88}
},
{
{50 ,60 ,77},
{80 ,70 ,66}
},
};
Nach dem Login kopieren

Arrays befinden sich innerhalb eines Arrays und werden daher als Array von 2D-Arrays bezeichnet. Wenn wir es im obigen Beispiel deutlich sehen, gibt es zwei 2D-Zahlenfelder und dieses 2D.

Wie initialisiere ich Elemente von 3D-Arrays in Java?

Wie oben erwähnt, ist die gleichzeitige Initialisierung des gesamten Arrays eine bewährte Vorgehensweise bei der Arbeit mit 3D-Arrays, da dadurch die Wahrscheinlichkeit von Verwirrung bei der zukünftigen Programmierung verringert wird. Wir können einem Array jedoch auch jeweils einen Wert zuweisen, was auf die unten beschriebene Weise erfolgen kann:

Syntax:

int employee_arr[ ] [ ] [ ] = new int [10][3][3];
employee_arr[0][0][0] = 100; // it will assign value 100 at very first element of employee_arr employee_arr[0][0][1] = 200; // it will assign value 200 at second element of employee_arr employee_arr[0][0][2] = 300; // it will assign value 100 at third element of employee_arr
Nach dem Login kopieren

Der obige Ansatz ist mühsam und wird nicht als guter Ansatz angesehen, da er viel Platz einnimmt und die Codezeilen erhöht. Es gibt auch einen Ansatz, der die Schleifen verwendet, die als bewährte Methode bei der Arbeit mit 3D-Arrays gelten.

Syntax:

int Student_arr [ ] [ ] [ ] = new arr [2] [3] [4]; int x, y, z, value;
for(x = 0; x< 2; x++) {
for(y = 0; y< 3; y++) {
for(z = 0; z< 4; z++) {
Student_arr[x][y][z] = value; value= value*2;
}
}
}
Nach dem Login kopieren

Im obigen Beispiel werden alle Array-Elemente mithilfe der Schleifen eingefügt, wobei x = Nr. ist. der Tabellen, y= Gesamtzahl der Zeilen und z bezeichnet die Gesamtzahl der Spalten in einem 3D-Array namens Student_arr.

Wie greife ich in Java auf Elemente von 3D-Arrays zu?

In Java können wir jedoch mithilfe der Indizes auf das einzelne Element des Arrays zugreifen, da wir sie durch Indizes ähnlich dem unten angegebenen initialisiert haben:

Syntax:

int arr [ ] [ ] [ ] = new arr [3] [3] [3];
// Accessing the array elements of 3D arrays in Java using indices
Nach dem Login kopieren

Syntax:

System.out.println("The first element of array is" + arr[0][0][0]);
Nach dem Login kopieren

In the above syntax, it will retrieve the element at [0][0][0] index of the array ‘arr’, but normally if we want to retrieve all the elements of an array, then this approach is not followed, and elements are accessed through loops as it retrieves all elements at once. While accessing elements through loops, 3 loops are used in which the first loop defines the total number of tables and the second loop defines the rows, and the third loop defines the columns as given below:

Code:

class Student{
public static void main(String[] args) {
// student_arr is the name of 3d array int[][][] student_arr= {
{
{10, 20, 30},
{20, 30, 40}
},
{
{40, 50, 60},
{10, 70, 80},
}
};
// for loop to iterate through each element of 3D array for (tables = 0; tables<2; tables++)
{
for (rows= 0; rows <2; rows++)
{
for (columns= 0; columns<3; columns++)
{
System.out.print("student_arr[" +tables+ "][" +rows+ "][" +columns+ "] = "
+student_arr[tables][rows][columns]+ "\t");
}
System.out.println();
}
System.out.println();
}
}
Nach dem Login kopieren

Output:

student_arr[0] [0] [0] = 10 student_arr[0] [0] [1] = 20 student_arr[0] [0] [2] = 30
student_arr[0] [1] [0] = 20 student_arr[0] [1] [1] = 30 student_arr[0] [1] [2] = 40
student_arr[1] [0] [0] = 40 student_arr[1] [0] [1] = 50 student_arr[1] [0] [2] = 60
student_arr[1] [1] [0] = 10 student_arr[1] [1] [1] = 70 student_arr[1] [1] [2] = 80

How to Remove Elements of 3D Arrays in Java?

  • Removing elements in 3D arrays in Java is simple and similar to the one initializing them. Array class does not provide any direct method to add or delete an element from the arrays. As the size of the array cannot be increased or decreased dynamically so simple programming logic is applied to perform this task. Simply we can use 3 loops to traverse the whole array by specifying the index at which we want to remove the element. We can create a new array or copy the original array leaving the element which needs to be removed.
  • Through this process of removing and updating elements in the 3D array is rarely used. Instead, ArrayList is used in these types of cases as it provides various functions to directly remove elements from it. In ArrayList ‘remove()’ method, remove elements at the provided index in an ArrayList. If we have repeating values in an array and we want to remove the first occurrence in the Array, we can use, ArrayUtils.removeElement(array, element) method for the same, which takes 2 arguments, i.e. the whole array and the element which needs to be removed from it.

How to Update Elements

There is as such no method to update elements in a 3D array. Some programming logic is applied to modify the elements, like removing the elements by traverse the whole array with the use of 3 loops and perform the modification either at the particular index or in the whole array. For such a complex task, this processing is not preferred through 3D arrays and done through the use of the collection, ArrayList. In ArrayList set(int index, E element) is used to modify or update the element dynamically in an array. It takes 2 arguments, i.e. the index and element with the modified and updated value.

Conclusion

As we mentioned above, how to work on 3D arrays in Java. Working with multidimensional arrays in Java is somewhat difficult for the new programmers as it involves various loops, but understanding it through the stepwise procedure and keeping in mind the basic rules while working with arrays can make it much easier to work on it.

Das obige ist der detaillierte Inhalt von3D-Arrays in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage