Nội dung bài viết dưới đây Taimienphi.vn sẽ xoay quanh chủ đề về Java - khai báo, sử dụng mảng trong Java, cách tạo mảng và xử lý mảng.
Java - Khai báo, sử dụng mảng trong Java
Java cung cấp cấu trúc dữ liệu, gọi là mảng (array), để lưu trữ các phần tử có cùng kiểu dữ liệu. Mảng được sử dụng để lưu trữ bộ sưu tập dữ liệu, nhưng người ta thường biết đến mảng lưu trữ các phần tử có cùng kiểu dữ liệu nhiều hơn.
Thay vì khai báo từng biến một, chẳng hạn như số 0, số 1, ..., và số 99, bạn có thể khai báo một biến mảng như: số và sau đó sử dụng các số [0], số [1], ..., và số [99] để biểu diễn từng biến một.
Khai báo mảng trong Java
Để sử dụng một mảng trong chương trình, trước hết bạn phải khai báo biến để tham chiếu mảng, và phải chỉ định loại mảng mà biến có thể tham chiếu. Dưới đây là cú pháp khai báo biến mảng trong Java:
Cú pháp
dataType[] arrayRefVar;
Hoặc:
dataType arrayRefVar[];
Lưu ý:
Cú pháp dataType[] arrayRefVar được ưu tiên hơn. Còn cú pháp dataType arrayRefVar[] có nguồn gốc từ ngôn ngữ C/C++ và được chấp nhận trong Java.
Ví dụ
Các đoạn mã dưới đây là ví dụ về các cú pháp trên:
double[] myList;
Hoặc:
double myList[];
Tạo mảng trong Java
Bạn có thể tạo mảng trong Java bằng cách sử dụng toán tử new với cú pháp dưới đây:
Cú pháp:
arrayRefVar = new dataType[arraySize];
Cú pháp trên:
- Tạo một mảng bằng cách sử dụng dataType[arraySize] mới.
- Chỉ định tham chiếu của mảng vừa được tạo cho biến arrayRefVar.
Có thể kết hợp khai báo một biến mảng, tạo một mảng và gán tham chiếu của mảng trong một lệnh, như dưới đây:
dataType[] arrayRefVar = new dataType[arraySize];
Hoặc ngoài ra bạn có thể tạo các mảng trong Java bằng cách sử dụng cú pháp dưới đây:
dataType[] arrayRefVar = {value0, value1, ..., valuek};
Các phần tử mảng được truy cập thông qua chỉ mục. Chỉ số mảng là 0, tức là các chỉ số này bắt đầu từ 0 đến arrayRefVar.length-1.
Ví dụ
Lệnh dưới đây khai báo biến mảng myList, tạo ra mảng gồm 10 phần tử theo kiểu double và gán tham chiếu cho myList:
dataType[] arrayRefVar = new dataType[arraySize];
Hoặc bạn có thể sử dụng lệnh dưới đây để tạo mảng:
dataType[] arrayRefVar = {value0, value1, ..., valuek};
Các phần tử mảng được truy cập thông qua chỉ mục. Chỉ số mảng là 0, tức là các chỉ số này bắt đầu từ 0 đến arrayRefVar.length-1.
Dưới đây là ảnh minh họa cho mảng myList. Trong đó myList gồm 10 phần tử theo kiểu double và các chỉ số từ 0 đến 9.
Xử lý mảng trong Java
Khi xử lý các phần tử mảng, chúng ta thường sử dụng vòng lặp for hoặc vòng lặp foreach, vì tất cả các phần tử trong mảng đều có cùng kiểu và kích thước mảng đã biết.
Ví dụ
Dưới đây là ví dụ hoàn chỉnh về cách tạo, khởi tạo và xử lý mảng:
Ví dụ trên trả về kết quả đầu ra là:
Vòng lặp foreach
Trên JDK 1.5 bổ sung thêm vòng lặp mới có tên gọi là vòng lặp foreach hoặc vòng lặp enhanced for, cho phép bạn triển khai toàn bộ mảng một cách liên tục mà không cần sử dụng biến chỉ mục.
Ví dụ
Đoạn mã dưới đây hiển thị tất cả các phần tử trong mảng myList:
Ví dụ trên trả về kết quả đầu ra là:
1.9
2.9
3.4
3.5
Truyền mảng cho các phương thức trong Java
Cũng giống như bạn có thể truyền các giá trị kiểu dữ liệu gốc (primitive type) sang phương thức, bạn cũng có thể truyền mảng cho các phương thức trong Java.
Ví dụ, phương thức dưới đây hiển thị các phần tử trong mảng int:
Bạn có thể gọi nó bằng cách truyền một mảng. Ví dụ, lệnh dưới đây gọi phương thức printArray hiển thị 3, 1, 2, 6, 4, và 2 :
printArray(new int[]{3, 1, 2, 6, 4, 2});
Trả về một mảng từ phương thức trong Java
Một phương thức cũng có thể trả về một mảng. Dưới đây là ví dụ phương thức trả về mảng theo thứ tự ngược lại:
Lớp Array trong Java
Lớp java.util.Arrays chứa nhiều phương thức static khác nhau để sắp xếp và tìm kiếm các mảng, so sánh các mảng và điền các phần tử vào mảng.
Dưới đây là bảng danh sách các phương thức cho kiểu dữ liệu gốc:
Với bài viết Java - Khai báo, sử dụng mảng, chắc hẳn sẽ tiếp thêm cho bạn một lượng kiến thức không hề nhỏ. Ngoài ra, bạn có thể tìm hiểu những bài viết về Java khác trên Taimienphi.vn như java - điều khiển lặp để tìm hiểu rõ hơn kiến thức về ngôn ngữ này nhé.