Я написал пример сортировки массива Java, здесь я поделюсь им для всех, чтобы учиться вместе
Кода -копия выглядит следующим образом:
пакет com.yonyou.test;
импортировать java.util.arraylist;
импортировать java.util.collections;
Импорт java.util.comparator;
импортировать java.util.list;
открытый тест класса {
public static void main (string [] args) {
Студент Zlj = новый студент ("Ding xiaoyu", 21);
Студент dxy = новый студент ("Zhao Si", 22);
Студент CJC = новый студент ("Zhang San", 11);
Студент LGC = новый студент («Лю у», 19);
Список <Tlade> StudentList = new ArrayList <toodTude> ();
StudentList.Add (ZLJ);
StudentList.Add (dxy);
StudentList.Add (CJC);
StudentList.Add (LGC);
System.out.println («Сортируется по году:»);
Collections.sort (StudentList, New Sortbyage ());
для (студент -студент: студент list) {
System.out.println (student.getName () + " /" + study.getage ());
}
System.out.println ("==========");
System.out.println ("сортирован по имени");
Collections.sort (StudentList, New SortbyName ());
для (студент -студент: студент list) {
System.out.println (student.getName () + " /" + study.getage ());
}
}
}
класс Sortbyage реализует компаратор {
public int compare (Object O1, Object O2) {
Студент S1 = (студент) O1;
Студент S2 = (студент) O2;
if (s1.getage ()> s2.getage ())
возврат 1;
else if (s1.getage () == s2.getage ()) {
возврат 0;
}
возврат -1;
}
}
класс sortbyname реализует компаратор {
public int compare (Object O1, Object O2) {
Студент S1 = (студент) O1;
Студент S2 = (студент) O2;
if (s1.getName (). Compareto (s2.getName ()) <0)
возврат -1;
else if (s1.getName (). CompareTo (s2.getName ())> 0) {
возврат 1;
}
возврат 0;
}
}
классный студент {
частный int возраст;
Приватное название строки;
public int getage () {
Возврат возраст;
}
public void setage (int age) {
this.age = возраст;
}
public String getName () {
вернуть имя;
}
public void setName (string name) {
this.name = name;
}
Общественный студент (название строки, int age) {
this.age = возраст;
this.name = name;
}
}