大家好,我是小跳,我来为大家解答以上问题。arraylist数组排序,arraylist排序很多人还不知道,现在让我们一起来看看吧!
package com.test;
public class BookBean {
private String no;
private String name;
private String date;
public String getDate() {
return date;
}
public void setDate(String date) {
this.date = date;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNo() {
return no;
}
public void setNo(String no) {
this.no = no;
}
}
以上为使用的BookBean
------------------------------------------
下面是排序使用的 比较器
package com.test;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Comparator;
public class MyComparator implements Comparator<BookBean> {
public int compare(BookBean book1, BookBean book2) {
DateFormat df =new SimpleDateFormat("yyyyMMdd");
try {
return df.parse(book1.getDate()).compareTo(df.parse(book2.getDate()));
} catch (ParseException e) {
return 0;
}
}
}
--------------------------------------------------------
下面是测试:
import java.util.Collections;
import java.util.List;
public class TestSort {
public static void main(String[] args) {
List<BookBean> list = new ArrayList<BookBean>();
for(int i=9;i>0;i--){
BookBean bb = new BookBean();
bb.setDate("2009030"+i);
bb.setNo("0"+i);
bb.setName("name"+i);
System.out.println(bb.getDate());
list.add(bb);
}
Collections.sort(list,new MyComparator());
System.out.println("after sort:(ASC)");
for(int i=0;i<list.size();i++){
System.out.println(list.get(i).getDate());
}
}
}
本文到此讲解完毕了,希望对大家有帮助。