package demo;
import java.util.Arrays;
import java.util.Comparator;
public class test {
public static void main(String[] args) {
// Arrays类的常用API
// 1.返回数组内容的toString(数组)
int[] arr = {10,2,55,23,24,100};
System.out.println(Arrays.toString(arr));
// 2.排序的API(默认自动对数组进行升序排序)
Arrays.sort(arr);
System.out.println(Arrays.toString(arr));
// 二分搜索技术(前提数组必须排好序)
int index = Arrays.binarySearch(arr, 55);
System.out.println(index);
// Comparator比较器对象
Integer[] ages = {34,12,42,23};
// 参数1:需要排序的数组 参数2:匿名内部类对象
Arrays.sort(ages, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
// 制定比较规则
return o2 - o1;
}
});
System.out.println(Arrays.toString(ages));
// 给对象排序
Student[] stu = new Student[3];
stu[0] = new Student(18,175.5,"张三");
stu[1] = new Student(23,185.5,"李四");
stu[2] = new Student(20,195.5,"王五");
Arrays.sort(stu, new Comparator<Student>() {
@Override
public int compare(Student o1, Student o2) {
// TODO Auto-generated method stub
return Double.compare(o2.getHeight(), o1.getHeight());
}
});
System.out.println(Arrays.toString(stu));
}
}
package demo;
public class Student {
private int age;
private double height;
private String name;
public Student() {
}
public Student(int age, double height, String name) {
this.age = age;
this.height = height;
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}