跳动百科

arraylist数组排序(arraylist排序)

闵娜姬
导读 大家好,我是小跳,我来为大家解答以上问题。arraylist数组排序,arraylist排序很多人还不知道,现在让我们一起来看看吧!package com.tes...

大家好,我是小跳,我来为大家解答以上问题。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());

}

}

}

本文到此讲解完毕了,希望对大家有帮助。