标签:大小 中文 裁判 override list size rgs pareto tor
import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; public class Test { /** * @param args */ public static void main(String[] args) { ArrayList<Animal> list2 = new ArrayList<>(); list2.add(new Animal("A", 63)); list2.add(new Animal("D", 34)); list2.add(new Animal("J", 1)); list2.add(new Animal("B", 13)); list2.add(new Animal("B", 1)); list2.add(new Animal("E", 27)); //参数 1: 要排序的容器 //参数 2: 裁判 Comparator的对象 Comparator<Animal> c = new Comparator<Animal>() { @Override public int compare(Animal o1, Animal o2) { // 返回值 > 0 o1比o2的对象 大 // = 0 一样大 // < 0 小 int i = o1.getAge() - o2.getAge(); if(i == 0) { i = o1.getName().compareTo(o2.getName()); } return i; } }; Collections.sort(list2, c); System.out.println(list2); } public static void mySort(List list,Comparator comparator) { for (int i = 0; i < list.size() - 1; i++) { for (int j = 0; j < list.size() - 1 - i; j++) { Object o1 = list.get(j); Object o2 = list.get(j + 1); if(comparator.compare(o1, o2) > 0)//判断大小 { list.set(j, o2); list.set(j + 1, o1); } } } } }
标签:大小 中文 裁判 override list size rgs pareto tor
原文地址:https://www.cnblogs.com/xyyou/p/12228129.html