1. Mảng là nơi chứa các phần tử

Bạn có thể đã nghe nói rằng máy tính có thể xử lý lượng thông tin khổng lồ. Tất nhiên, câu điều kiện ( if-else) và vòng lặp ( for, while) là một trợ giúp lớn ở đây. Nhưng họ chỉ có thể đưa bạn cho đến nay. Rốt cuộc, dữ liệu bạn xử lý cần được lưu trữ bằng cách nào đó.

Giống như hầu hết các ngôn ngữ lập trình, Java hỗ trợ xử lý dữ liệu bằng cách cung cấp thứ tuyệt vời này được gọi là mảng ( Arraylớp). Đôi khi chúng còn được gọi là bảng.

Mảng là một đối tượng đặc biệt cho phép bạn lưu trữ không phải một giá trị mà là nhiều giá trị .

Mảng Java

Trước đó, chúng tôi đã so sánh một biến với một hộp (trong đó bạn có thể lưu trữ bất kỳ giá trị nào). Tiếp tục phép loại suy đó, chúng ta có thể coi mảng là một hộp có các ngăn bên trong. Mỗi ngăn trong "hộp" (mảng) có một số. Tất nhiên, việc đánh số bắt đầu từ số không...

Hoặc chúng ta có thể thực hiện một phép loại suy khác. Hãy so sánh một ngôi nhà bình thường và một tòa nhà chung cư cao tầng. Một ngôi nhà bình thường được ở bởi một gia đình, nhưng một tòa nhà chung cư cao tầng được chia thành các căn hộ. Nếu bạn muốn gửi thư cho một gia đình sống trong một ngôi nhà bình thường, bạn cho biết địa chỉ duy nhất của ngôi nhà. Và để gửi thư cho một gia đình sống trong một căn hộ, bạn cho biết địa chỉ duy nhất của tòa nhà cũng như số căn hộ.

Biến mảng giống như biến cao tầng. Nó có thể lưu trữ không chỉ một mà nhiều giá trị. Một biến như vậy có mấy căn (ô). Mỗi người trong số họ có thể được giải quyết bằng số của họ (chỉ mục).

Để thực hiện việc này, sau tên của biến, bạn cho biết chỉ mục của ô mà bạn muốn xử lý, đặt chỉ mục trong dấu ngoặc vuông. Điều này khá đơn giản:

array[index] = value;

Đâu arraylà tên của biến mảng, indexlà số ô trong mảng và valuelà giá trị mà chúng ta muốn đặt vào ô được chỉ định.

Nhưng để bắt đầu, hãy xem cách tạo mảng.


2. Tạo mảng phần tử trong Java

Tạo một mảng các phần tử trong Java

Giả sử chương trình của bạn cần lưu trữ 100số nguyên ở đâu đó. Một mảng sẽ là một ứng cử viên sáng giá cho việc này. Và làm thế nào để bạn tạo ra một?

Nếu chúng tôi muốn lưu trữ một số nguyên, intloại sẽ phù hợp với chúng tôi. Nhưng nếu chúng ta muốn lưu trữ 100các số nguyên, có lẽ chúng ta cần một mảng s int. Đây là cách mã để tạo một mã sẽ trông như thế nào:

int[] array = new int[100];

Hãy cùng khám phá câu nói này.

Như bạn có thể đoán, ở bên trái của dấu bằng, chúng ta có phần khai báo của một biến có tên arrayint[]. Loại intđược theo sau bởi dấu ngoặc vuông, gợi ý rằng "hộp" của loại này có thể lưu trữ không chỉ một mà nhiều giá trị.

Bên phải dấu bằng, ta có một ví dụ về "tạo đối tượng" (từ newkhóa) để lấy 100các phần tử (ô) có kiểu int. Không có gì quá khó khăn ở đây.

Tương tự, nếu chúng ta muốn tạo một mảng gồm 20 ô để lưu trữ các số thực, thì mã của chúng ta sẽ giống như thế này:

double[] vals = new double[20];

Số lượng ô trong một mảng được gọi là kích thước của mảng hoặc độ dài của mảng . Và vì mảng có thể lưu trữ nhiều giá trị nên chúng còn được gọi là vùng chứa.

Đây là một sự thật quan trọng: bạn không thể thay đổi kích thước của một mảng sau khi nó được tạo .

Bạn có thể tạo một cái mới, nhưng không thể thay đổi chiều dài của vùng chứa hiện tại.



3. Thao tác với các ô của mảng

Làm việc với các ô của mảng

Được rồi, chúng ta đã học cách tạo mảng. Bây giờ làm thế nào để chúng ta làm việc với họ?

Chà, theo cách gần giống như với các biến thông thường. Điểm khác biệt duy nhất là sau tên của biến mảng, chúng ta phải chỉ ra số thứ tự của ô mà chúng ta đang làm việc.

Việc đánh số các ô trong một mảng luôn bắt đầu từ số không. Nếu chúng ta có một mảng 10các phần tử, thì các số (chỉ số) của các ô của nó là 0..9. Nếu mảng chứa 200các phần tử, thì các chỉ số là 0..199. Và như vậy bằng cách loại suy.

Ví dụ:

Mã số Giải trình
int[] a = new int[10];
a[2] = 4;
a[7] = 9;
a[9] = a[2] + a[5];
Tạo một mảng 10 intcác phần tử.
Gán giá trị 4cho ô có chỉ mục 2.
Gán giá trị 9cho ô có chỉ mục 7.
Trong ô có chỉ mục 9, viết tổng các giá trị được lưu trữ trong các ô 2(lưu trữ giá trị 4) và 5(lưu trữ giá trị 0).

Đây là những gì sẽ được lưu trữ trong bộ nhớ sau khi mã này được thực thi:

Làm việc với các ô của một mảng int 2

Cột bên trái (màu xám) biểu thị số ô (chỉ số). Các ô lưu trữ các giá trị được gán: 4, 94. Khi mảng được tạo, tất cả các ô của nó đều chứa đầy số không.

Cái này quan trọng. Tất cả các ô trong một mảng có cùng kiểu dữ liệu. Nếu chúng ta tạo một mảng Strings, thì chỉ các chuỗi có thể được lưu trữ trong các ô của nó. Kiểu dữ liệu của một mảng được chỉ định khi nó được tạo. Không thể thay đổi kiểu dữ liệu cũng như độ dài của mảng sau này.