Học lập trình Java cung cấp một cấu trúc dữ liệu, mảng , lưu trữ một bộ sưu tập tuần tự có kích thước cố định của các phần tử cùng loại.
Thay vì khai báo các biến riêng lẻ, chẳng hạn như number0, number1, ... và number99, bạn khai báo một biến mảng như số và sử dụng số [0], số [1] và ..., số [99] để biểu thị các biến riêng lẻ.
Hướng dẫn này giới thiệu cách khai báo biến mảng, tạo mảng và xử lý mảng bằng cách sử dụng biến được lập chỉ mục.
Cú pháp
Lưu ý - Kiểu dữ liệu [] ArrayRefVar được ưu tiên. Kiểu dataType ArrayRefVar [] xuất phát từ ngôn ngữ C / C ++ và được sử dụng trong Khóa Học lập trình Java để chứa các lập trình viên C / C ++.
Thí dụ
Các đoạn mã sau đây là ví dụ về cú pháp này
Tạo mảng
Bạn có thể tạo một mảng bằng cách sử dụng toán tử mới với cú pháp sau
Cú pháp
Nó gán tham chiếu của mảng vừa tạo cho biến ArrayRefVar.
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 cho biến đó có thể được kết hợp trong một câu lệnh, như hiển thị bên dưới
Ngoài ra, bạn có thể tạo các mảng như sau
Các phần tử mảng được truy cập thông qua chỉ mục . Các chỉ số mảng là 0 dựa trên; nghĩa là, chúng bắt đầu từ 0 đến mảngRefVar.length-1 .
Thí dụ
Câu lệnh sau khai báo một biến mảng, myList, tạo một mảng gồm 10 phần tử kiểu kép và gán tham chiếu của nó cho myList
Mảng xử lý
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ột mảng đều cùng loại và kích thước của mảng được biết đến.
Thí dụ
Dưới đây là một ví dụ hoàn chỉnh cho thấy cách tạo, khởi tạo và xử lý mảng
Đầu ra
Thí dụ
Đoạn mã sau hiển thị tất cả các phần tử trong mảng myList
Đầu ra
Truyền các mảng cho các phương thức
Giống như bạn có thể truyền các giá trị kiểu nguyên thủy cho các phương thức, bạn cũng có thể truyền các mảng cho các phương thức. Ví dụ: phương thức sau hiển thị các phần tử trong một mảng int
Một mảng được sử dụng để lưu trữ một tập hợp dữ liệu, nhưng thường hữu ích hơn khi nghĩ về một mảng là một tập hợp các biến cùng loại.
Khóa học lập trình Java |
Thay vì khai báo các biến riêng lẻ, chẳng hạn như number0, number1, ... và number99, bạn khai báo một biến mảng như số và sử dụng số [0], số [1] và ..., số [99] để biểu thị các biến riêng lẻ.
Hướng dẫn này giới thiệu cách khai báo biến mảng, tạo mảng và xử lý mảng bằng cách sử dụng biến được lập chỉ mục.
Khai báo biến mảng
Để sử dụng một mảng trong một chương trình, bạn phải khai báo một biến để tham chiếu mảng và bạn phải chỉ định loại mảng mà biến có thể tham chiếu. Đây là cú pháp để khai báo một biến mảng -Cú pháp
dataType[] arrayRefVar; // preferred way.
or
dataType arrayRefVar[]; // works but not preferred way.
Lưu ý - Kiểu dữ liệu [] ArrayRefVar được ưu tiên. Kiểu dataType ArrayRefVar [] xuất phát từ ngôn ngữ C / C ++ và được sử dụng trong Khóa Học lập trình Java để chứa các lập trình viên C / C ++.
Thí dụ
Các đoạn mã sau đây là ví dụ về cú pháp này
double[] myList; // preferred way. or double myList[]; // works but not preferred way.
Tạo mảng
Bạn có thể tạo một mảng bằng cách sử dụng toán tử mới với cú pháp sau
Cú pháp
arrayRefVar = new dataType[arraySize];
Tuyên bố trên có hai điều
Nó tạo ra một mảng bằng cách sử dụng dataType mới [ArraySize].Nó gán tham chiếu của mảng vừa tạo cho biến ArrayRefVar.
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 cho biến đó có thể được kết hợp trong một câu lệnh, như hiển thị bên dưới
dataType[] arrayRefVar = new dataType[arraySize];
Ngoài ra, bạn có thể tạo các mảng như sau
dataType[] arrayRefVar = {value0, value1, ..., valuek};
Các phần tử mảng được truy cập thông qua chỉ mục . Các chỉ số mảng là 0 dựa trên; nghĩa là, chúng bắt đầu từ 0 đến mảngRefVar.length-1 .
Thí dụ
Câu lệnh sau khai báo một biến mảng, myList, tạo một mảng gồm 10 phần tử kiểu kép và gán tham chiếu của nó cho myList
double[] myList = new double[10];Hình ảnh sau đại diện cho mảng myList. Ở đây, myList giữ mười giá trị kép và các chỉ số từ 0 đến 9.
Mảng xử lý
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ột mảng đều cùng loại và kích thước của mảng được biết đến.
Thí dụ
Dưới đây là một ví dụ hoàn chỉnh cho thấy cách tạo, khởi tạo và xử lý mảng
public class TestArray { public static void main(String[] args) { double[] myList = {1.9, 2.9, 3.4, 3.5}; // Print all the array elements for (int i = 0; i < myList.length; i++) { System.out.println(myList[i] + " "); } // Summing all elements double total = 0; for (int i = 0; i < myList.length; i++) { total += myList[i]; } System.out.println("Total is " + total); // Finding the largest element double max = myList[0]; for (int i = 1; i < myList.length; i++) { if (myList[i] > max) max = myList[i]; } System.out.println("Max is " + max); } }Điều này sẽ tạo ra kết quả sau
Đầu ra
1.9
2.9
3.4
3.5
Total is 11.7
Max is 3.5
Vòng lặp foreach
JDK 1.5 đã giới thiệu một vòng lặp for mới được gọi là vòng lặp foreach hoặc vòng lặp for được tăng cường, cho phép bạn duyệt qua mảng hoàn chỉnh một cách tuần tự mà không cần sử dụng biến chỉ số.Thí dụ
Đoạn mã sau hiển thị tất cả các phần tử trong mảng myList
public class TestArray { public static void main(String[] args) { double[] myList = {1.9, 2.9, 3.4, 3.5}; // Print all the array elements for (double element: myList) { System.out.println(element); } } }Điều này sẽ tạo ra kết quả sau
Đầu ra
1.9
2.9
3.4
3.5
Giống như bạn có thể truyền các giá trị kiểu nguyên thủy cho các phương thức, bạn cũng có thể truyền các mảng cho các phương thức. Ví dụ: phương thức sau hiển thị các phần tử trong một mảng int
public static void printArray(int[] array) { for (int i = 0; i < array.length; i++) { System.out.print(array[i] + " "); } }Bạn có thể gọi nó bằng cách chuyển một mảng. Ví dụ: câu lệnh sau 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ừ một phương thức
Một phương thức cũng có thể trả về một mảng. Ví dụ, phương thức sau đây trả về một mảng là sự đảo ngược của một mảng khácpublic static int[] reverse(int[] list) { int[] result = new int[list.length]; for (int i = 0, j = result.length - 1; i < list.length; i++, j--) { result[j] = list[i]; } return result; }
Lớp Mảng
Học lập trình Java Lớp java.util.Arrays chứa các phương thức tĩnh 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ử mảng. Các phương thức này được quá tải cho tất cả các loại nguyên thủy.Sr.Không. | Phương pháp & Mô tả |
---|---|
1 | public static int binarySearch (Object [] a, Khóa đối tượng) Tìm kiếm mảng đối tượng đã chỉ định (Byte, Int, double, v.v.) cho giá trị được chỉ định bằng thuật toán tìm kiếm nhị phân. Mảng phải được sắp xếp trước khi thực hiện cuộc gọi này. Điều này trả về chỉ mục của khóa tìm kiếm, nếu nó được chứa trong danh sách; mặt khác, nó trả về (- (điểm chèn + 1)). |
2 | boolean tĩnh công bằng (dài [] a, dài [] a2) Trả về true nếu hai mảng dài xác định bằng nhau. Hai mảng được coi là bằng nhau nếu cả hai mảng chứa cùng một số phần tử và tất cả các cặp phần tử tương ứng trong hai mảng bằng nhau. Điều này trả về true nếu hai mảng bằng nhau. Tất cả các loại dữ liệu nguyên thủy khác có thể được sử dụng cùng một phương thức |
3 | điền tĩnh void void (int [] a, int val) Gán giá trị int được chỉ định cho từng phần tử của mảng int được chỉ định. Phương thức tương tự có thể được sử dụng bởi tất cả các loại dữ liệu nguyên thủy khác (Byte, short, Int, v.v.) |
4 | sắp xếp khoảng trống tĩnh công khai (Đối tượng [] a) Sắp xếp các mảng đối tượng được chỉ định theo thứ tự tăng dần, theo thứ tự tự nhiên của các phần tử của nó. Phương thức tương tự có thể được sử dụng bởi tất cả các loại dữ liệu nguyên thủy khác (Byte, short, Int, v.v.) |
Không có nhận xét nào:
Đăng nhận xét