Đoạn trích bài giảng với người cố vấn trong khóa học của Đại học Codegym. Đăng ký cho khóa học đầy đủ.


"Chào, Amigo!"

"Này, Ellie!"

"Hôm nay, tôi sẽ cho bạn biết về một thực thể mới và thú vị: mảng. Mảng là một kiểu dữ liệu có thể lưu trữ nhiều giá trị thay vì chỉ một."

Mảng - 1

"Hãy bắt đầu bằng một phép loại suy. Hãy so sánh một ngôi nhà và một tòa nhà chung cư. Một ngôi nhà bình thường thường chỉ dành cho một gia đình ở, nhưng một tòa nhà chung cư được chia thành nhiều căn hộ. Để gửi thư cho một gia đình sống trong một ngôi nhà, bạn cần chỉ ra địa chỉ duy nhất của ngôi nhà. Để gửi thư cho một gia đình sống trong một tòa nhà chung cư, bạn cần viết địa chỉ duy nhất của tòa nhà chung cư và số căn hộ."

"Mọi thứ có vẻ rõ ràng cho đến nay."

"Biến mảng giống như biến tòa nhà chung cư. Bạn có thể lưu trữ nhiều giá trị trong đó thay vì chỉ một. Biến như vậy có một số căn hộ (phần tử) mà bạn có thể tham khảo bằng cách sử dụng số căn hộ (chỉ mục). Để làm điều này, chỉ ra chỉ số của phần tử mảng mà bạn muốn truy cập trong dấu ngoặc vuông sau tên của biến mảng. Nó khá đơn giản."

"Tôi hy vọng như vậy, Ellie."

"Biến chung cư (biến mảng) có thể chứa các phần tử thuộc bất kỳ kiểu nào. Bạn chỉ cần viết ' TypeName[]_tên_biến ' thay vì ' TypeName_tên_biến '."

Dưới đây là một số ví dụ:

Mã số Sự miêu tả
String[] list = new String[5];
Tạo một Stringmảng với 5các phần tử
System.out.println(list[0]);
System.out.println(list[1]);
System.out.println(list[2]);
System.out.println(list[3]);
System.out.println(list[4]);
Năm giá trị ' null ' sẽ được hiển thị.

Để truy cập giá trị của một phần tử mảng cụ thể, hãy sử dụng dấu ngoặc vuông và chỉ mục của phần tử.

int listCount = list.length;
listCountsẽ được gán giá trị 5, là số phần tử trong listmảng. lưu trữ độ dài của mảng (số phần tử).
list.length
list[1] = "Mom";
String s = list[1];
Khi gán các đối tượng cho các phần tử mảng, bạn cần chỉ ra chỉ số phần tử trong ngoặc vuông.
for (int i = 0; i < list.length; i++)
{
     System.out.println(list[i]);
}
Hiển thị giá trị của tất cả các phần tử mảng trên màn hình.

"Thật thú vị!"

"Một biến mảng yêu cầu khởi tạo bổ sung."

— ?

"Với một biến thông thường, bạn chỉ cần khai báo nó và sau đó gán các giá trị khác nhau cho nó. Với một mảng thì phức tạp hơn một chút."

"Trước tiên, bạn phải tạo một vùng chứa chứa N phần tử và chỉ khi đó bạn mới có thể bắt đầu đặt các giá trị vào vùng chứa."

Mã số Sự miêu tả
String[] list = null;
Biến listmảng là null . Nó chỉ có thể lưu trữ tham chiếu đến vùng chứa cho các phần tử. Bạn phải tạo vùng chứa riêng.
String[] list = new String[5];
Tạo vùng chứa cho 5các phần tử và gán tham chiếu cho listbiến. Container này có 5 căn hộ (phần tử) được đánh số 0, 1, 2, 3 và 4.
String[] list = new String[1];
Tạo vùng chứa cho 1phần tử và gán tham chiếu cho listbiến. Để đặt một cái gì đó vào thùng chứa này, chúng tôi sẽ viết một cái gì đó nhưlist[0] = "Yo!";
String[] list = new String[0];
Tạo vùng chứa cho 0các phần tử và gán tham chiếu cho listbiến. Bạn không thể lưu trữ bất cứ thứ gì trong thùng chứa này.

"Tôi hiểu rồi. Bây giờ nó đang trở nên rõ ràng hơn."

"Đây là một số thông tin cơ bản về mảng:"

1) Mảng gồm nhiều phần tử.

2) Để truy cập một phần tử nhất định, bạn chỉ định số (chỉ mục) của phần tử đó.

3) Tất cả các phần tử đều cùng loại.

4) Giá trị ban đầu cho tất cả các phần tử là null; đối với các mảng kiểu nguyên thủy, giá trị ban đầu là 0, 0,0 (đối với số phân số) hoặc sai (đối với boolean). Nó hoàn toàn giống với các biến chưa được khởi tạo không có trong mảng.

5) Chuỗi [] danh sách chỉ cần khai báo một biến. Trước tiên, bạn cần tạo một mảng (vùng chứa), đặt thứ gì đó vào đó và chỉ sau đó mới sử dụng nó (xem ví dụ bên dưới).

6) Khi chúng ta tạo một đối tượng mảng (bộ chứa), chúng ta cần chỉ ra độ dài hoặc số lượng phần tử của nó. Chúng tôi làm điều này bằng cách sử dụng TypeName[n] mới;

Mảng - 2

Dưới đây là một số ví dụ:

Mã số Sự miêu tả
String s;
String[] list;
sbằng không
listbằng không
list = new String[10];
int n = list.length;
Biến listlưu trữ một tham chiếu đến một đối tượng – một mảng 10 phần tử của Chuỗi
n bằng 10
list = new String[0];
Bây giờ listchứa một 0mảng phần tử. Mảng tồn tại, nhưng nó không thể lưu trữ Chuỗi.
list = null;
System.out.println(list[1]);
Điều này sẽ đưa ra một ngoại lệ (lỗi thời gian chạy) và chương trình sẽ bị chấm dứt bất thường: listchứa tham chiếu null.
list = new String[10];
System.out.println(list[11]);
Điều này sẽ đưa ra một ngoại lệ (lỗi thời gian chạy): chỉ mục mảng nằm ngoài giới hạn.

Nếu listchứa 10 phần tử, các chỉ số hợp lệ là: 0,1,2,3,4,5,6,7,8 và 9 (với tổng số 10 chỉ số).