Rumah >Java >javaTutorial >Tatasusunan 3D di Jawa
Sebelum memahami tatasusunan 3D dalam Java, kita harus mengetahui tatasusunan itu dan mengapa ia digunakan dalam bahasa pengaturcaraan? Tatasusunan pada asasnya ialah sekumpulan jenis nilai yang serupa yang dirujuk dengan nama yang sama. Dengan jenis yang serupa, kami maksudkan nilai-nilai jenis data yang sama. Pertimbangkan situasi di mana kita ingin menyimpan nama semua pelajar kelas. Memandangkan nama Pelajar adalah daripada jenis data String, tetapi adalah tidak betul untuk menyimpan nama setiap pelajar dalam pembolehubah yang berbeza kerana ia bukan sahaja akan menduduki banyak ruang tetapi juga mewujudkan kekeliruan dalam program juga dengan meningkatkan hampir sama baris kod. Jadi untuk mengendalikan jenis situasi ini, Tatasusunan digunakan. Pengaturcara boleh mencipta tatasusunan Student_names dan menentukan saiznya pada masa penciptaan objek tatasusunan. Dengan cara ini, tidak ada keperluan untuk menentukan nama pembolehubah kepada setiap nama pelajar, dan apabila kita ingin mengemas kini, memasukkan dan mendapatkan semula nilai, indeks tatasusunan ini boleh digunakan.
Di Java, pembolehubah tatasusunan diisytiharkan serupa dengan pembolehubah lain dengan tanda [] selepas jenis datanya. Saiz tatasusunan perlu ditakrifkan pada masa penciptaan tatasusunan, dan ia kekal malar. Elemen tatasusunan diakses oleh indeks berangka, dengan elemen pertama disimpan pada 0 indeks. Pada asasnya terdapat dua jenis tatasusunan dalam Java, iaitu tatasusunan satu dimensi dan pelbagai dimensi. Tatasusunan 3D termasuk dalam kategori tatasusunan berbilang dimensi. Tatasusunan berbilang dimensi, dalam perkataan mudah, boleh ditakrifkan sebagai tatasusunan tatasusunan, dan tatasusunan 3D ialah tatasusunan tatasusunan 2D. 3D ialah bentuk kompleks tatasusunan berbilang dimensi. Pertimbangkan senario Pangsapuri dalam bangunan. Katakan terdapat 10 tingkat dalam apartmen dan setiap tingkat mempunyai 5 flat, dan setiap flat mempunyai 3 bilik. Untuk mengendalikan data ini dalam pengaturcaraan, tatasusunan 3D digunakan.
IKLAN Kursus Popular dalam kategori ini JAVA MASTERY - Pengkhususan | 78 Siri Kursus | 15 Ujian Olok-olokJava menggunakan cara yang sangat mudah untuk menentukan tatasusunan. Tanda kurung segi empat sama (‘[ ]’) digunakan untuk mentakrifkan objek tatasusunan selepas jenis data tatasusunan. Seseorang perlu menentukan saiz pada masa pengisytiharan tatasusunan. Tatasusunan 3D ditakrifkan dengan tiga kurungan. Di bawah diberikan sintaks mentakrif tatasusunan 3D dalam Java:
Data_type array_name[ ] [ ] [ ] = new array_name[a][b][c];
Sintaks:
int [ ] [ ] [ ] arr = new int [10][4][3];
Maksimum 10x4x3 = 120 elemen boleh disimpan oleh tatasusunan 'arr' dalam contoh di atas.
Mencipta tatasusunan 3D di Java semudah membuat tatasusunan 1D dan 2D. Seperti yang dinyatakan di atas, adalah penting untuk menentukan saiz tatasusunan pada masa pengisytiharan. Mencipta tatasusunan 3D melibatkan satu lagi langkah menghantar/memasukkan nilai di dalamnya dalam bentuk tatasusunan 2D. Kita boleh mentakrifkan saiz tatasusunan dan boleh memasukkan/masukkan nilai selepas itu, atau kita boleh terus menghantar nilai dalam tatasusunan. Jadi cara nilai yang ditakrifkan dalam tatasusunan 3D diberikan di bawah:
Sintaks
data_type[][][] arr_name = { { {Array1Row1Col1,Array1Row1Col2,....}, {Array1Row2Col1, Array1Row2Col2, ....} }, { {Array2Row1Col1, Array2Row1Col2, ....}, {Array2Row2Col1, Array2Row2Col2, ....} } }
Kod
int num_array [ ] [ ] [ ] = { { {10 ,20 ,99}, {30 ,40 ,88} }, { {50 ,60 ,77}, {80 ,70 ,66} }, };
Tatasusunan berada di dalam tatasusunan, dan oleh itu ia dipanggil tatasusunan tatasusunan 2D. Jika kita melihatnya dengan jelas dalam contoh di atas, terdapat dua tatasusunan nombor 2D dan 2D ini.
Seperti yang dinyatakan di atas, memulakan keseluruhan tatasusunan sekaligus ialah amalan terbaik apabila bekerja dengan tatasusunan 3D kerana ia mengurangkan kemungkinan kekeliruan untuk pengaturcaraan masa hadapan. Walaupun kita juga boleh menetapkan satu nilai pada satu masa dalam tatasusunan yang boleh dilakukan dengan cara yang dinyatakan di bawah:
Sintaks:
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
Pendekatan di atas memenatkan dan tidak dianggap sebagai pendekatan yang baik kerana ia menempati banyak ruang dan meningkatkan baris kod. Terdapat juga satu pendekatan menggunakan gelung, yang dianggap sebagai amalan yang baik apabila bekerja dengan tatasusunan 3D.
Sintaks:
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; } } }
Dalam contoh di atas, semua elemen tatasusunan dimasukkan menggunakan gelung di mana x = tidak. daripada jadual, y= jumlah bilangan baris dan z menandakan jumlah bilangan lajur dalam tatasusunan 3D bernama Student_arr.
Di Java, walaupun kita boleh mengakses elemen tunggal tatasusunan menggunakan indeks kerana kita telah memulakannya dengan indeks yang serupa dengan yang diberikan di bawah:
Sintaks:
int arr [ ] [ ] [ ] = new arr [3] [3] [3]; // Accessing the array elements of 3D arrays in Java using indices
Sintaks:
System.out.println("The first element of array is" + arr[0][0][0]);
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(); } }
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 |
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.
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.
Atas ialah kandungan terperinci Tatasusunan 3D di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!