數(shù)組排序
int[]arr={2,4,6,8,1,3,5,7,9};
Arrays.sort(arr);
for(int a:arr) {
System.out.println(a);
}
//輸出結(jié)果:1,2,3,4,5,6,7,8,9
list排序
List<Integer> list=new ArrayList<>();
list.add(3);
list.add(2);
list.add(1);
Collections.sort(list);
for (int a:list){
System.out.println(a);
}
//輸出結(jié)果:1,2,3
compareTo大小判斷
String a="a1";
String b="a2";
int i = a.compareTo(b);//asc碼差值》0則前者大于后者,《0則前者小于后者 =0為相等
System.out.println(i);
//輸出結(jié)果:a1,a2;
Comparable排序
Ages ages1 = new Ages("ba");
Ages ages2 = new Ages("bb");
Ages ages3 = new Ages("aa");
Ages ages4 = new Ages("ab");
List<Ages> agesList=new ArrayList<>();
agesList.add(ages1);
agesList.add(ages2);
agesList.add(ages3);
agesList.add(ages4);
Collections.sort(agesList);
for (Ages a1:agesList){
System.out.println(a1.getAge());
}
//輸出結(jié)果:bb,ba傻寂,ab,aa
private static class Ages implements Comparable<Ages> {
private String age;
public Ages(String age) {
this.age=age;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
@Override
public int compareTo(Ages o) {
return o.getAge().compareTo(this.getAge());
}
}
Comparator排序
Book book1 = new Book("ba");
Book book2 = new Book("bb");
Book book3 = new Book("aa");
Book book4 = new Book("ab");
List<Book> bookList=new ArrayList<>();
bookList.add(book1);
bookList.add(book2);
bookList.add(book3);
bookList.add(book4);
//按Comparator自定義規(guī)則排序
Collections.sort(bookList,new BookCompareto());
for (Book s:bookList){
System.out.println(s.getBookName());
}
//輸出結(jié)果:aa,ab,ba,bb
private static class Book {
public Book(String bookName){
this.bookName=bookName;
}
private String bookName;
public String getBookName() {
return bookName;
}
public void setBookName(String bookName) {
this.bookName = bookName;
}
}
public static class BookCompareto implements Comparator<Book> {
@Override
public int compare(Book o1, Book o2) {
return o1.getBookName().compareTo(o2.getBookName());
}
}