java 对象排序,也是根据对象某个属性进行排序 例如:苹果对象排序,以大小为根据
import java.lang.reflect.Array;
import java.util.*;
/**
* Created by Bright on 2017/7/2.
*/
public class compareTest {
public static void main(String[] args) {
List<Apple> apples = new ArrayList<Apple>();
apples.add(new Apple(2));
apples.add(new Apple(3));
apples.add(new Apple(1));
apples.add(new Apple(5));
Collections.sort(apples, new Apple());
System.out.println(apples);
}
}
class Apple implements Comparator<Apple>{
private int size;
public int getSize() {
return size;
}
public void setSize(int size) {
this.size = size;
}
public Apple(){
}
public Apple(int size) {
this.size = size;
}
@Override
public int compare(Apple o1, Apple o2) {
return Integer.compare(o1.getSize(),o2.getSize());
}
@Override
public String toString() {
return "Apple{" +
"size=" + size +
'}';
}
}
排序后输出:
[Apple{size=1}, Apple{size=2}, Apple{size=3}, Apple{size=5}]