JDK提供的java.util.Arrays类包含了常用的数组操作,可以实现数组元素的排序、查找、填充、打印等常见操作。
实例:
import java.util.Arrays;
public class Test {
public static void main (String args[]) {
Man[] msMans = { new Man(3,"a"), new Man(60,"b"), new Man(2,"c") };
//遍历排序前的msMans数组的元素
for(Man temp : msMans) {
System.out.println(temp);
}
//打印排序前的msMans数组的元素
System.out.println(Arrays.toString(msMans));
//对数组元素排序;小数据时用串行排序(sort),大数据是用并行排序(parallelSort)延迟会明显较低
Arrays.sort(msMans);
//打印排序后的msMans数组的元素
System.out.println(Arrays.toString(msMans));
/*
* //deepToString()主要应用于多维数组字符串的转换,不过也可以用于一维数组
* System.out.println(Arrays.deepToString(msMans));
*
*/ }
}
//Man类继承Comparable接口实现元素比较
class Man implements Comparable<Object> {
int age;
int id;
String name;
public Man (int age,String name) {
super();
this.age = age;
this.name = name;
}
public String toString() {
return this.age+" "+this.name;
}
//通过compareTo(Object)方法判断对象大小,其方法内部原理即是通过其中一项属性做对比标准,即此类中的age为标准定义对象大小
public int compareTo(Object f) {
Man man = (Man) f;
if (this.age < man.age) {
return -1;
}
if (this.age > man.age) {
return 1;
}
return 0;
}
}
输出结果:
3 a
60 b
2 c
[3 a, 60 b, 2 c]
[2 c, 3 a, 60 b]