JDK提供的java.util.Arrays类,包含了常用的数组操作,方便我们日常开发。Arrays类包含了:排序、查找、填充、打印内容等常见的操作。
示例:Arrays工具类的使用:打印数组
package test;
import java.util.Arrays;
public class TestArrays {
public static void main(String[] args) {
int[] a = {1, 2};
System.out.println(a);
System.out.println(Arrays.toString(a));
}
}
运行结果:
菜鸟雷区
此处的Arrays.toString()方法是Arrays类的静态方法,不是前面讲的Object的toString()方法。
示例:数组元素的排序
package test;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
int[] a = {100, 20, 50, 300, 6};
System.out.println(a);
System.out.println(Arrays.toString(a));
//排序
Arrays.sort(a);
System.out.println(Arrays.toString(a));
}
}
运行结果:
示例:二分法查找数组元素
package test;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
int[] a = {12, 16, 265, 25, 600, 402, 8};
System.out.println(Arrays.toString(a));
Arrays.sort(a); //使用二分法查找,必须先对数组进行排序;
System.out.println(Arrays.toString(a));
//返回排序后,若找到元素,则返回新的索引位置,若未找到返回负数。
//未找到元素返回负数
System.out.println("找不到元素:" + Arrays.binarySearch(a, 88));
//找到元素返回索引,查找a数组600在数组什么位置
System.out.println("该元素的索引:" + Arrays.binarySearch(a, 600));
}
}
运行结果:
示例:数组填充(替换元素)
package test;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
int[] a = {12, 23, 18, 988, 660, 440, 520};
System.out.println(Arrays.toString(a));
Arrays.fill(a, 2, 5, 500); //将2到5索引的元素替换为500;(包括索引2,但不包括索引5)
System.out.println(Arrays.toString(a));
}
}
运行结果: