Arrays类
- 数组的工具类Java.util.Arrays
- 由于数组对象本身没有什么方法可以提供给我们调用。但是API中提供了一个工具类Arrays供我们使用,从而可以对数据对象进行一些基本操作。
- Arrays类中的方法都是Static修饰的静态方法,在使用的时候可以直接使用类名进行调用,而可以不用使用对象来调用。(注意:是"不用"而不是"不能")
一定要注意导入的包没有错
具有以下常用功能:
-
给数组赋值:通过 fill 方法
例:
public static void main(String[] args){ int[] a = {43,12,45,34,62,35,545,123}; //数组赋值:fill方法 Arrays.fill(a,0); System.out.println(Arrays.toString(a));
输出结果就会将所有0赋值给所有元素
也可以选择给第几个元素到哪一个元素进行赋值,例:
输出结果:
-
对数组排序:通过 sort 方法(按升序)
例:
public class ArrayDemo06 { public static void main(String[] args){ int[] a = {43,12,45,34,62,35,545,123}; Arrays.sort(a);//数组进行排序 System.out.println(Arrays.toString(a)); } }
输出结果:
-
比较数组:通过 equals 方法比较数组中元素值是否相等
-
查找数组元素:通过 binarySearch 方法能对排序好的数组进行二分查找法操作
例:
public static void main(String[] args){
int[] a = {43,12,45,34,62,35,545,123};
System.out.println(a); //如果直接输出,则出现的是对象:[I@1b6d3586
这里就要用到Arrays类的Arrays.toString来打印数组元素
//打印数组元素,Arrays.toString
System.out.println(Arrays.toString(a));
我们也可以不用工具类,用自己的方法
//重复造轮子
public static void printArray(int[] a){
for (int i = 0; i < a.length; i++) {
if (i==0){
System.out.print("["); //如果是最开始的数,就在前面加“[” //注意是不换行,print
}
if (i==a.length-1){
System.out.println(a[i]+"]");//如果是最后一个数,在最后加"]"
}else{
System.out.print(a[i]+", ");
}
}
}
两种方法输出的结果都是一样的