Apa itu Matrix / 2D Array di Jawa?
“Matriks adalah kumpulan bilangan yang disusun menjadi sejumlah baris dan kolom yang tetap.” Biasanya ini adalah bilangan real. Secara umum, matriks dapat berisi bilangan kompleks tetapi demi kesederhanaan, kami hanya akan menggunakan bilangan bulat di sini. Mari kita lihat seperti apa matriks itu. Berikut adalah contoh matriks dengan 4 baris dan 4 kolom.Deklarasikan & Inisialisasi Array 2D
Berikut adalah beberapa cara berbeda untuk hanya mendeklarasikan ukuran array, atau menginisialisasinya tanpa menyebutkan ukurannya.
public class Matrices {
public static void main(String[] args) {
// declare & initialize 2D arrays for int and string
int[][] matrix1 = new int[2][2];
int matrix2[][] = new int[2][3];
//the size of matrix3 will be 4x4
int[][] matrix3 = { { 3, 2, 1, 7 },
{ 9, 11, 5, 4 },
{ 6, 0, 13, 17 },
{ 7, 21, 14, 15 } };
String[][] matrix4 = new String[2][2];
//the size of matrix5 will be 2x3
// 3 cols because at max there are 3 columns
String[][] matrix5 = { { "a", "lion", "meo" },
{ "jaguar", "hunt" } };
}
}
Penjelajahan Larik 2D
Kita semua tahu cara melintasi array reguler di Jawa. Untuk array 2D juga tidak sulit. Kami biasanya menggunakan loop 'untuk' bersarang untuk ini. Beberapa pemula mungkin menganggapnya sebagai konsep asing, tetapi segera setelah Anda menggali lebih dalam, Anda akan dapat menerapkannya dengan beberapa latihan. Lihat cuplikan berikut. Itu hanya menampilkan jumlah kolom yang sesuai dengan setiap baris untuk pemahaman menyeluruh Anda.
public class MatrixTraversal {
public static void main(String[] args) {
int[][] matrix = new int[4][4];
for (int i = 0; i < matrix.length; i++)
{
// length returns number of rows
System.out.print("row " + i + " : ");
for (int j = 0; j < matrix[i].length; j++)
{
// here length returns # of columns corresponding to current row
System.out.print("col " + j + " ");
}
System.out.println();
}
}
}
Keluaran
baris 0 : kol 0 kol 1 kol 2 kol 3 baris 1 : kol 0 kol 1 kol 2 kol 3 baris 2 : kol 0 kol 1 kol 2 kol 3 baris 3 : kol 0 kol 1 kol 2 kol 3
Bagaimana cara Mencetak Array 2D di Java?
Setelah Anda terbiasa dengan traversal Array 2D, mari kita lihat beberapa cara untuk mencetak Array 2D di Java.Menggunakan loop "untuk" Bersarang
Ini adalah cara paling dasar untuk mencetak matriks di Jawa.
public class MatrixTraversal {
public static void printMatrix(int matrix[][])
{
for (int i = 0; i < matrix.length; i++)
{
// length returns number of rows
for (int j = 0; j < matrix[i].length; j++)
{
// here length returns number of columns corresponding to current row
// using tabs for equal spaces, looks better aligned
// matrix[i][j] will return each element placed at row ‘i',column 'j'
System.out.print( matrix[i][j] + "\t");
}
System.out.println();
}
}
public static void main(String[] args) {
int[][] matrix = { { 3, 2, 1, 7 },
{ 9, 11, 5, 4 },
{ 6, 0, 13, 17 },
{ 7, 21, 14, 15 } };
printMatrix(matrix);
}
}
Keluaran
3 2 1 7 9 11 5 4 6 0 13 17 7 21 14 15
Menggunakan loop "untuk-setiap".
Berikut cara lain untuk mencetak array 2D di Java menggunakan “ foreach loop ”. Ini adalah jenis loop khusus yang disediakan oleh Java, di mana int[]baris akan mengulang setiap baris dalam matriks. Sedangkan variabel “element” akan memuat setiap elemen yang ditempatkan pada indeks kolom sepanjang baris.
public class MatrixTraversal {
public static void printMatrix(int matrix[][]){
for (int [] row : matrix)
{
// traverses through number of rows
for (int element : row)
{
// 'element' has current element of row index
System.out.print( element + "\t");
}
System.out.println();
}
}
public static void main(String[] args) {
int[][] matrix = { { 3, 2, 1, 7 },
{ 9, 11, 5, 4 },
{ 6, 0, 13, 17 },
{ 7, 21, 14, 15 } };
printMatrix(matrix);
}
}
Keluaran
3 2 1 7 9 11 5 4 6 0 13 17 7 21 14 15
Menggunakan metode “Arays.toString()”.
Metode Arrays.toString() di Java, mengonversi setiap parameter yang diteruskan sebagai larik tunggal dan menggunakan metode bawaannya untuk mencetaknya. Kami telah membuat larik String 2D dummy untuk dimainkan. Metode yang sama juga berfungsi untuk array integer. Kami mendorong Anda untuk berlatih untuk latihan Anda.
import java.util.Arrays;
public class MatrixTraversal {
public static void printMatrix(String matrix[][]){
for (String[] row : matrix) {
// convert each row to a String before printing
System.out.println(Arrays.toString(row));
}
}
public static void main(String[] args) {
String [][] matrix = { { "Hi, I am Karen" },
{ "I'm new to Java"},
{ "I love swimming" },
{ "sometimes I play keyboard"} };
printMatrix(matrix);
}
}
Keluaran
[Hai, saya Karen] [Saya baru di Jawa] [Saya suka berenang] [terkadang saya bermain keyboard]
GO TO FULL VERSION