Trong bài viết này, chúng ta sẽ tìm hiểu về mảng hai chiều trong Java. Đây là một khái niệm phức tạp hơn mảng một chiều. Hãy cùng tìm hiểu nhé!
Mảng hai chiều trong Java
Mảng hai chiều là một mảng có 2 chỉ số để lưu trữ các giá trị. Ví dụ, một bảng có m dòng và n cột. Chúng ta sẽ đi vào chi tiết về nội dung của bài học này.
Cú pháp khai báo mảng
Cú pháp khai báo mảng hai chiều có 2 dạng như sau:
Dạng 1: [Kiểu_dữ_liệu] tên_mảng[][];
Dạng 2: [Kiểu_dữ_liệu][][] tên_mảng;
Ví dụ: int a[][]; - khai báo mảng hai chiều a có kiểu dữ liệu là int.
Cấp phát bộ nhớ cho mảng
Chúng ta có 2 cách để cấp phát bộ nhớ cho mảng hai chiều trong Java.
Cách 1:
Ví dụ: int number[][] = new int[2][3];
Cách 2:
Ví dụ: int A[][] = {{1, 2, 3}, {4, 5, 6}};
Bản chất của mảng hai chiều là mỗi dòng của nó chính là một mảng một chiều. Ví dụ: với mảng hai chiều a có 3 dòng, 5 cột, mỗi phần tử của mảng có kiểu int thì a được xem như mảng một chiều có 3 phần tử, mỗi phần tử này là một mảng một chiều có 5 phần tử.
Truy xuất các phần tử của mảng
Mỗi phần tử của mảng hai chiều được truy xuất thông qua tên mảng cùng với chỉ số dòng và chỉ số cột của phần tử đó. Chúng ta có thể sử dụng cú pháp sau:
Tên_mảng[dòng][cột]
Ví dụ: Để truy cập đến phần tử nằm ở dòng 2, cột 1 của mảng diem được khai báo ở trên thì chúng ta làm như sau:
diem[2][1]
Nhập xuất các phần tử cho mảng
Chúng ta có thể nhập các phần tử cho mảng hai chiều từ bàn phím và sau đó hiển thị chúng ra màn hình.
Một số ví dụ về thao tác đối với mảng hai chiều
Ví dụ 1
Viết chương trình thực hiện các công việc sau:
- Nhập m, n là số dòng và 2 số cột của 2 ma trận 2 chiều từ bàn phím.
- Nhập giá trị cho các phần tử cho 2 ma trận này.
- Tính và in ra màn hình ma trận C là tổng của 2 ma trận này.
Ví dụ 2
Một ma trận được gọi là ma trận thưa nếu số phần tử có giá trị bằng 0 nhiều hơn số phần tử khác 0.
Viết chương trình thực hiện các công việc sau:
- Nhập m, n là số dòng và số cột của ma trận hai chiều từ bàn phím.
- Nhập giá trị các phần tử của ma trận từ bàn phím.
- Kiểm tra và thông báo lên màn hình ma trận vừa nhập là ma trận thưa hay ma trận không thưa.
Ví dụ 3
Một ma trận được gọi là ma trận đối xứng nếu nó là ma trận vuông và các phần tử của nó đối xứng nhau qua đường chéo chính.
Viết chương trình nhập từ bàn phím các phần tử của ma trận A, kích thước m dòng, n cột (1 <= m, n <= 5). Kiểm tra xem ma trận vừa nhập có phải là ma trận đối xứng hay không?
Hạn chế của mảng
Vì các phần tử trong mảng được sắp xếp liên tục nên việc chèn hoặc xóa một phần tử trong mảng cũng sẽ gặp khó khăn.
Lời kết
Đây là bài cuối cùng về mảng trong chương Chuỗi và mảng. Sau đây, chúng ta sẽ tìm hiểu về khái niệm Collections (Tập hợp) trong Java để giải quyết những hạn chế của mảng. Hãy tiếp tục đồng hành cùng chúng tôi!