Set<String> 日期型別資料排序實現
package com.wyz
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import java.util.TreeSet;
public class test {
public static void main( String[] args ) {
Set<String> set = new HashSet<>();
set.add("2018-01-01");
set.add("2018-01-02");
set.add("2018-01-03");
set.add("2018-01-04");
set.add("2019-01-05");
Set<String> sortSet = getOrderByDate(set);
System.out.println(sortSet.toString());
}
public static Set<String> getOrderByDate(Set<String> set){
Set<String> sortSet = new TreeSet<String>(new Comparator<String>() {
public int compare(String o1, String o2) {
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
try {
Date d1 = df.parse(o1);
Date d2 = df.parse(o2);
if(d1.getTime()<d2.getTime()){
return 1;
}else if(d1.getTime()>d2.getTime()){
return -1;
}else{
return 0;
}
} catch (ParseException e) {
e.printStackTrace();
}
return 0;
}
});
sortSet.addAll(set);
return sortSet;
}
&n