CFSDN nhấn mạnh vào giá trị tạo ra nguồn mở và chúng tôi cam kết xây dựng nền tảng chia sẻ tài nguyên để mọi nhân viên CNTT có thể tìm thấy thế giới tuyệt vời của bạn tại đây.
Bài viết trên blog CFSDN này cung cấp những giải thích chi tiết về cách sử dụng mảng Java, được tác giả sưu tầm và biên soạn. Nếu bạn quan tâm đến bài viết này thì nhớ like nhé.
Mục lục
- 1. Ý nghĩa của mảng:
- 2. Tạo mảng
- 1. Khởi tạo động
- 2. Khởi tạo tĩnh
- 3. Truyền tải mảng
- 4. Sự khác biệt giữa Arrays.deepToString() và Arrays.toString()
- 5. Các phương thức phổ biến của lớp Arrays trong Java
- 1. Sắp xếp số
- 2. Sắp xếp chuỗi, viết hoa trước rồi viết thường
- 3. Sắp xếp chặt chẽ theo thứ tự bảng chữ cái, nghĩa là bỏ qua việc sắp xếp chữ hoa chữ thường CASE_INSENSITIVE_ORDER
- 4. Sắp xếp ngược, Collections.reverseOrder()
- 5. Bỏ qua trường hợp và sắp xếp ngược lại (bỏ qua trường hợp đầu tiên, sau đó sắp xếp ngược lại)
- 6. Chọn vị trí xác định trong mảng để sắp xếp
- 6. Chống trùng lặp mảng
- 7. Xóa mảng và thêm phần tử
- 8. Chuyển đổi mảng và Danh sách với nhau
- Tóm tắt
。
1. Ý nghĩa của mảng:
Mảng một chiều: Tập hợp các phần tử có cùng kiểu dữ liệu.
Mảng hai chữ số: Mảng lưu trữ mảng, tức là mảng lưu trữ dữ liệu dưới dạng mảng.
。
2. Tạo mảng
Mảng một chiều.
。
1. Khởi tạo động
Kiểu dữ liệu [] tên mảng = kiểu dữ liệu mới [độ dài mảng],
Ví dụ: int[] a = new int[5],
。
2. Khởi tạo tĩnh
Kiểu dữ liệu [] tên mảng = {array0, array1, array2, array3,…},
Ví dụ: int[] b = new int[]{1,2,3,4,5},
Kiểu dữ liệu [] tên mảng = {array0, array1, array2, array3,…},
Ví dụ: int[] c = {1,2,3,4,5}.
Mảng hai chữ số.
Kiểu dữ liệu [][] tên mảng = {array1, array2,…},
Ví dụ: int[][] a = {{3,5},{7,9},{1,2}},

。
3. Truyền tải mảng
Duyệt mảng một chiều.
int [] arr={1,2,3,4,5};cho(int a = 0; a < chiều dài arr; a++){ System.out.print(arr[a]); }
Kết quả chạy:
12345 。
Truyền tải phương thức tĩnh ToString trong lớp công cụ Mảng.
int [] arr={1,2,3,4,5}; System.out.print(Mảng.toString(arr));
Kết quả chạy:
[1, 2, 3, 4, 5] 。
Truyền tải mảng hai chiều.
int Arr[][]={{5,7,15},{8,4,11},{3,6,13}}; đối với (int i = 0; i < Arr.length; i++) { đối với (int j = 0; j < Arr[i].length; j++) { System.out.print(Arr[i][j]+" "); } }
Kết quả chạy:
5 7 15 8 4 11 3 6 13 。
Truyền tải phương thức tĩnh deepToString trong lớp công cụ Mảng.
int b[][]={{5,7,15},{8,4,11},{3,6,13}};System.out.println(Mảng.deepToString(b));
Kết quả chạy:
[[5, 7, 15], [8, 4, 11], [3, 6, 13]] 。
。
4. Sự khác biệt giữa Arrays.deepToString() và Arrays.toString()
Arrays.deepToString() chủ yếu được sử dụng khi có một mảng trong mảng, còn Arrays.toString() thì ngược lại. Đối với Arrays.toString(), khi có một mảng trong mảng thì nội dung của mảng sẽ không. được in ra. Nó sẽ chỉ được in dưới dạng địa chỉ.
ví dụ:
int a[][]={{5,7,15},{8,4,11},{3,6,13}}; System.out.println(Mảng.toString(a)); int b[][]={{1,2,3},{8,4,11},{3,6,13}}; System.out.println(Mảng.deepToString(b));
Kết quả chạy:
[[Tôi@da2dbb, [Tôi@176fe71, [Tôi@fb509a] 。
[[1, 2, 3], [8, 4, 11], [3, 6, 13]] 。
。
5. Các phương thức phổ biến của lớp Arrays trong Java
Lớp Arrays nằm trong gói java.util và chủ yếu chứa các phương thức khác nhau để vận hành mảng.
Arrays.fill(); //Điền vào mảng.
int[] a = new int[5];//Tạo một mảng mới có kích thước 5 Arrays.fill(a,4);//Gán 4 cho tất cả các giá trị System.out.println(Arrays.toString(a) ); int[] b = new int[5];//Tạo một mảng mới có kích thước 5 Arrays.fill(b, 2,4,1);//Gán giá trị 6 cho bit 2 (bắt đầu từ 0) đến bit 4 (không bao gồm) System.out.println(Arrays.toString(b));
Kết quả chạy:
[4, 4, 4, 4, 4] [0, 0, 1, 1, 0] 。
Arrays.sort(); //Sắp xếp mảng.
。
1. Sắp xếp số
int[] a = new int[] { 4, 1, 3, -2, 10 }; Mảng.sort(a); System.out.println(Mảng.toString(a));
Kết quả chạy:
[-2, 1, 3, 4, 10] 。
。
2. Sắp xếp chuỗi, viết hoa trước rồi viết thường
String[] a = new String[] { "a", "b", "C" }; Mảng.sort(a); System.out.println(Mảng.toString(a));
Kết quả chạy:
[C, a, b] 。
。
3. Sắp xếp chặt chẽ theo thứ tự bảng chữ cái, nghĩa là bỏ qua việc sắp xếp chữ hoa chữ thường CASE_INSENSITIVE_ORDER
Chuỗi[] a = Chuỗi mới[] { "a", "b", "C" }; Mảng.sort(a, Chuỗi.CASE_INSENSITIVE_ORDER); System.out.println(Mảng.toString(a));
Kết quả chạy:
[a, b, C] 。
。
4. Sắp xếp ngược, Collections.reverseOrder()
Chuỗi[] a = Chuỗi mới[] { "a", "b", "C" }; Mảng.sort(a, Bộ sưu tập.reverseOrder()); Hệ thống.out.println(Mảng.toString(a));
Kết quả chạy:
[a, b, C] 。
。
5. Bỏ qua trường hợp và sắp xếp ngược lại (bỏ qua trường hợp đầu tiên, sau đó sắp xếp ngược lại)
Chuỗi[] a = Chuỗi mới[] { "a", "B", "c","D" }; Mảng. sắp xếp(a, Chuỗi. CASE_INSENSITIVE_ORDER); Bộ sưu tập. đảo ngược(Mảng. asList(a)); Hệ thống. out. println(Mảng. toString(a));
Kết quả chạy:
[D, c, B, a] 。
。
6. Chọn vị trí xác định trong mảng để sắp xếp
int[] a = {3,2,1,8,6,5,4,7};Arrays.sort(a,0,3);//Gán bit thứ 0 (bắt đầu từ 0) cho bit thứ 3 ( không bao gồm) sắp xếp System.out.print(Arrays.toString(a));
Kết quả chạy:
[1, 2, 3, 8, 6, 5, 4, 7] 。
Arrays.toString(); //In ra tất cả nội dung trong mảng.
int[] a = {3,2,1,5,4};System.out.println(a);//In mảng trực tiếp dưới dạng String str = Arrays.toString(a); // toString( của lớp Arrays ) có thể in ra tất cả nội dung của mảng System.out.println(str);
Kết quả chạy:
[Tôi@da2dbb [3, 2, 1, 5, 4] 。
Arrays.equals(); //So sánh các phần tử mảng để tìm sự bằng nhau.
int[] arr1 = {1,2,3};int[] arr2 = {1,2,3};System.out.println(Mảng.bằng(arr1,arr2));System.out.println(arr1.bằng(arr2));
Kết quả chạy:
đúng sai 。
Bởi vì bằng so sánh địa chỉ của hai đối tượng chứ không phải các số bên trong chúng và Arrays.equals ghi đè bằng, nên ở đây bạn có thể so sánh xem các phần tử có bằng nhau hay không.
Arrays.copyOf(); //Sao chép mảng.
int[] a= {3, 7, 2, 1};int[] b=Arrays.copyOf(arr6, 4); // Chỉ định độ dài của mảng mới int[] c=Arrays.copyOfRange(a, 1) , 3 ); //Chỉ sao chép các phần tử từ chỉ mục [1] sang chỉ mục [3] (không bao gồm các phần tử tại chỉ mục [3]) System.out.println(Arrays.toString(b));System.out.println(Arrays. toString(c) );
Kết quả chạy:
[3, 7, 2, 1] [7, 2] 。
Liệu mảng có chứa một giá trị nhất định hay không.
Chuỗi[] mảng={"aaa","bbb","ccc","ddd","eee"};Chuỗi a="aaa";Chuỗi b="fff";nếu (Arrays.asList(mảng).contains(a)) { System.out.println("1");}nếu không { System.out.println("2");}nếu (Arrays.asList(mảng).contains(b)) { System.out.println("1");}nếu không { System.out.println("2");}
Kết quả chạy:
1 2 。
Đối với các phương pháp khác, hãy xem JAVA JDK_API để biết chi tiết.






。
6. Chống trùng lặp mảng
1. Sử dụng các đặc điểm của tập hợp để loại bỏ các bản sao.
int[] arr11 = {1,2,3,4,5,6,7,8,9,0,3,2,4,5,6,7,4,32,2,1,1,4,6,3};Set set2=new HashSet();for (int i = 0; i < arr11.length; i++) { set2.add(arr11[i]);}System.out.println(set2);int[] arr12 = new int[set2.size()];int j=0;for (Số nguyên i:set2) { arr12[j++]=i;}System.out.println(Mảng.toString(arr12));
Kết quả chạy:
[0, 32, 1, 2, 3, 4, 5, 6, 7, 8, 9] [0, 32, 1, 2, 3, 4, 5, 6, 7, 8, 9] 。
2. Sử dụng List Collection để thực hiện.
int[] str = {5, 6, 6, 6, 8, 8, 7,4};List list = new ArrayList();for (int i=0; i
Kết quả chạy:
[5, 6, 8, 7, 4] 。
3. Sử dụng hashSet hoặc TreeSet để triển khai.
Integer[] nums = { 5, 5, 6, 6, 6, 8, 8, 7, 11, 12, 12 }; HashSet hset = new HashSet(Arrays.asList(nums));//TreeSet hset = new TreeSet(Arrays.asList(nums));Iterator i = hset.iterator();while(i.hasNext()){ System.out.print(i.next());}
Kết quả chạy:
56781112 。
4. Sử dụng List và thiết lập để thực hiện.
int[] nums = { 5, 6, 6, 6, 8, 8, 7 };Danh sách numList = new ArrayList();for (int i : nums) numList.add(i);Set numSet = new HashSet();numSet.addAll(numList);System.out.println(numSet);
Kết quả chạy:
[5, 6, 7, 8] 。
。
7. Xóa mảng và thêm phần tử
Xóa một phần tử khỏi mảng.
String [] str = {"Java", "C++", "Php", "C#", "Python"};//Xóa phpList list = new ArrayList();for (int i=0 ; i
Kết quả chạy:
[Java, C++, C#, Python] 。
Thêm một phần tử vào mảng.
Chuỗi [] str = {"Java", "C++", "Php", "C#", "Python"};//Thêm rubyList list = new ArrayList();for (int i=0 ; i
Kết quả chạy:
[Java, C++, ruby, Php, C#, Python] 。
。
8. Chuyển đổi mảng và Danh sách với nhau
Để chuyển đổi một mảng thành Danh sách, hãy sử dụng phương thức asList của lớp công cụ java.util.Arrays trong JDK.
String[] strs = new String[] {"aaa", "bbb", "ccc"};Danh sách danh sách = Mảng.asList(strs);cho (Chuỗi s : danh sách) { System.out.println(s);}
Để chuyển đổi Danh sách thành mảng, hãy sử dụng phương thức toArray của List. Phương thức toArray không tham số trả về một mảng Object. Truyền vào đối tượng mảng với độ dài ban đầu và trả về mảng đối tượng.
Danh sách list2 = Arrays.asList("aaa", "bbb", "ccc");String[] mảng = list2.toArray(chuỗi mới[list2.size()]);for (Chuỗi s : mảng) { System.out.println(s);}
。
Tóm tắt
Bài viết này kết thúc tại đây, tôi hy vọng nó có thể hữu ích cho bạn và tôi hy vọng bạn có thể chú ý hơn đến nội dung của tôi! .
Liên kết gốc: https://blog.csdn.net/weixin_46566078/article/details/119456224.
Cuối cùng, bài viết giải thích chi tiết về việc sử dụng mảng Java kết thúc ở đây. Nếu bạn muốn biết thêm về giải thích chi tiết về việc sử dụng mảng Java, vui lòng tìm kiếm các bài viết về CFSDN hoặc tiếp tục duyệt qua các bài viết liên quan. ủng hộ blog của tôi trong tương lai! .
Tôi là một lập trình viên xuất sắc, rất giỏi!