Khai Báo Và Khởi Tạo Mảng 2 Chiều (two Dimensional Array) Trong Java

1. Khai báo và khởi tạo mảng 2 chiều

Mảng hai chiều (two dimensional array) trong Java dùng để lưu trữ dữ liệu dưới dạng ma trận gồm nhiều dòng và nhiều cột. Mảng 2 chiều lưu trữ các phần tử theo dạng bảng gồm dòng và cột.

Mảng 2 chiều trong Java

Có thể hình dùng mảng 2 chiều ở trên như là một bảng gồm 3 dòng và 4 cột. Mỗi dòng thì lưu trữ như mảng một chiều.

Cú pháp khai báo mảng 2 chiều:

elementType[][] arrayRefVar; hoặc elementType arrayRefVar[][];

Ví dụ: Khai báo một biến mảng ma trận hai chiều lưu các giá trị kiểu int.int[][] matrix; hoặc int matrix[][];

Cấp phát vùng nhớ cho mảng 2 chiều

int[][] a; a = new int[3][4];
Mảng 2 chiều trong Java

Chỉ số của dòng và cột của mảng 2 chiều trong Java bắt đầu từ 0. Ví dụ, phần tử dòng 1, cột 1 là a[0][0].

Khởi tạo mảng 2 chiều

int[][] arr = { {1, 2, 3, 0}, {4, 5, 6, 9}, {7, 2, 5, 5}, };

Ở ví dụ trên, chúng ta tạo ra một mảng 2 chiều tên là arr và khởi tạo các phần tử của mảng trong dấu ngoặc nhọn {}. Mảng 2 chiều arr gồm 3 dòng và 4 cột.

Chúng ta cũng có thể khởi tạo mảng 2 chiều bằng cách gán giá trị cho từng phần tử trong mảng thông qua chỉ số dòng và chỉ số cột.int[][] arr = new int[3][4]; arr[0][0]=1; arr[0][1]=2; arr[0][2]=3; arr[0][3]=0; arr[1][0]=4; arr[1][1]=5; arr[1][2]=6; arr[1][3]=9; arr[2][0]=7; arr[2][1]=2; arr[2][2]=5; arr[2][3]=5;

2. Kích thước của mảng 2 chiều trong Java

Mảng hai chiều là một mảng mà mỗi phần tử là một mảng một chiều.x.length; x[0].length; x[1].length; x[2].length;

Kích thước mảng 2 chiều trong Java

3. Mảng gồ ghề (jagged array) trong Java

Mỗi dòng của một mảng 2 chiều trong Java là một mảng đơn. Vì vậy, mỗi dòng có thể có độ dài khác nhau. Một mảng như vậy được gọi là mảng gồ ghề (jagged array).int[][] a = { {1, 2, 3}, {4, 5, 6, 9}, {7}, };

Mảng gồ ghề (jagged array) trong Java

Trong mảng trên, a[0].length = 3, a[1].length = 4, a[2].length = 1. Các dòng trong mảng có số lượng phần tử khác nhau. Mảng a là một mảng gồ ghề.

  • Thuật toán tìm kiếm tuyến tính (Linear Search)
  • Đặc điểm của biến (variable) và hằng (constant) trong Python
  • Hàm lambda trong Python là gì?
  • Hàm count() trong PHP
  • Dòng (stream) là gì? Tập tin (file) và phân loại tập tin trong lập trình
4.2/5 - (5 bình chọn)Bài trước và bài sau trong môn học<< Kỹ thuật lập trình với mảng 1 chiều trong JavaKỹ thuật lập trình với mảng 2 chiều trong Java >>

Từ khóa » Khai Báo Mảng 2 Chiều Java