Arrays类
数组工具类 java.util.Arrays
Arrays类中的方法都是static修饰的静态方法,在使用时可以直接使用类名进行调用,而“不用”使用对象来调用(不用不是不能使用new)
Arrays类具有以下常用的功能:
1、给数组赋值:通过fill方法。
2、对数组排序:通过sort方法,按升序
3、比较数组:通过equals方法比较数组中元素值是否相等。
4、查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找操作。
package array;
import java.util.Arrays;
public class ArrayDemo03 {
public static void main(String[] args) {
int[] arrays = {1,112,3,133,1155,167,77};
System.out.println(arrays);//正常打印是一个哈希代码:[I@23fc625
//打印数组元素Arrays.toString()
System.out.println(Arrays.toString(arrays));//[1, 112, 3, 133, 1155, 167, 77]
//数组进行排序(升序)
Arrays.sort(arrays);
System.out.println(Arrays.toString(arrays));//[1, 3, 77, 112, 133, 167, 1155] 注:是转换成字符串输出
/*
方法信息:public static int binarySearch(Array[] array, int fromIndex, int toIndex, data key)
参数1数组,(参数2,3可以没有) 参数2,3为数组索引位置,用来对指定范围的数据进行排序, 参数4为要查找的值,
使用二分法查找元素在数组中的索引位置
*/
System.out.println("输出元素的值为3的参数的位置:"+Arrays.binarySearch(arrays,3));//输出元素的值为3的参数的位置:1
//数组填充
Arrays.fill(arrays,2);//将数组所有元素全部填充为2
System.out.println(Arrays.toString(arrays));//[2, 2, 2, 2, 2, 2, 2]
Arrays.fill(arrays,2,4,5);//将2到4之间的元素填充为5(不包括4)
System.out.println(Arrays.toString(arrays));//[2, 2, 5, 5, 2, 2, 2]
int a[]={10,3,2,1,72,23,34};
int b[]={3,6,7,8,56,23,9};
int c[]={3,63,7,8,55,33,56};
int d[]={3,63,7,8,55,33,56};//与c数组对应元素相同
//判断两个数组是否相等(对应位置上的元素是否相等),当数组之间对应元素相等时输出true,不等时为false。
boolean flag1=Arrays.equals(a,b);
boolean flag2=Arrays.equals(b, c);
boolean flag3=Arrays.equals(c,d);
System.out.println("a:"+Arrays.toString(a));
System.out.println("b:"+Arrays.toString(b));
System.out.println("c:"+Arrays.toString(c));
System.out.println("a与b是否相等?"+flag1);
System.out.println("b与c是否相等?"+flag2);
System.out.println("b与c是否相等?"+flag3);
/*
a与b是否相等?false
b与c是否相等?false
b与c是否相等?true
*/
/*
Arrays类常用的方法如下:
* toString 转换成字符串打印
*binarySearch 搜索下标
* sort 正序排列
*fill 填充数值
* equals 判断是否相等
*/
}
}