前言
在Java中,有很多封装好的类可以用来操纵数组(排序,复制等等),使得数组使用起来非常的方便。这就是高级语言带来的好处。
代码示例 - 一维数组
package test; import java.util.Arrays; public class Test { public static void main(String[] args) { int []a = {1, 3, 5, 2, 4, 6}; // 将数组转换为字符串输出 System.out.println(Arrays.toString(a)); /* // 将数组排序后输出 Arrays.sort(a); System.out.println(Arrays.toString(a)); // 查找数组中某个元素的下标 System.out.println(Arrays.binarySearch(a, 1)); System.out.println(Arrays.binarySearch(a, 5)); // 对数组进行拷贝 int []b = Arrays.copyOf(a, a.length); System.out.println(Arrays.toString(b)); // 将所有数组元素设置为某一值 Arrays.fill(b, 9); System.out.println(Arrays.toString(b)); // 比较两个数组 System.out.println(Arrays.equals(a, b)); Arrays.fill(a, 9); System.out.println(Arrays.equals(a, b)); */ } }
代码示例 - 二维数组
1 package test; 2 3 import java.util.Arrays; 4 5 public class Test { 6 7 public static void main(String[] args) { 8 9 // 静态创建 10 int [][]a = { 11 {1, 3, 5, 2, 4, 6}, 12 {2, 4, 6, 1, 3, 5} 13 }; 14 15 // 动态创建 16 int row = 2; 17 int col = 6; 18 int [][]b = new int[row][col]; 19 20 // 将数组转换为字符串输出 21 System.out.println(Arrays.deepToString(a)); 22 System.out.println(Arrays.deepToString(b)); 23 24 } 25 }
运行结果
略。
小结
1. 请留意上面二维数组的动态创建。这段代码的意义和在C++中的不同 - C++只能先动态创建一个一维指针数组,再在每个指针数组的指针元素上new一维数组。这里是直接new出来了二维数组。
2. 还有许多很方便的API没有详细列出,使用时要多查阅Java的API手册。
时间: 2024-10-09 23:27:05