java.util.Arrays类针对数组进行操作的工具类
它提供的所有方法都是静态的。
给数组赋值:通过fill方法。fill( int[] a, int val)
public static void main(String[] args) {
int[] a = new int[10];
Arrays.fill(a,6);
for(int i=0;i<a.length;i++){
System.out.print(a[i]);
}
}
结果:6 6 6 6 6 6 6 6 6 6
对数组排序:通过sort方法,按升序。
public static void main(String[] args) {
int[] a = new int[]{1,2,19,3,7,28};
Arrays.sort(a);
System.out.println(Arrays.toString(a));
}
比较数组:通过equals方法比较数组中元素值是否相等。
public static void main(String[] args) {
int[] i = new int[7];
int[] j= new int[7];
Arrays.fill(i, 47);
Arrays.fill(j,47);
System.out.println(Arrays.equals(i, j));
i[2]=49;
System.out.println(Arrays.equals(i, j));
String[] strs1= new String[4];
Arrays.fill(strs1, "Hi");
String[] strs2= new String[]{new String("Hi"),new String("Hi"),
new String("Hi"),new String("Hi")};
System.out.println(Arrays.equals(strs1, strs2));
User[] u1= new User[]{new User("a"),new User("b")};
User[] u2= new User[]{new User("a"),new User("b")};
System.out.println(Arrays.equals(u1, u2));
}
//注意:对于引用类型,不但要数组的大小相同,并且每个元素也要相同,数组的大小相同的情况下,数组每个元素使用equals比较。
打印输出一个数组的内容
int[] intArray = { 1, 2, 3, 4, 5 };
String intArrayString = Arrays.toString(intArray);
System.out.println(intArrayString);
把数组转成集合public static List asList(T… a)
注意事项:虽然可以把数组转成集合,但集合长度不能变
public class ArraysDemo {
public static void main(String[] args) {
List<String> list=Arrays.asList("hello","world","java");
list.set(1, "element");
for(String s:list) {
System.out.println(s);
}
}
}