本文目錄一覽:
java實現日期排序問題
java按文件日期排序方法,下面以對C盤Java目錄下文件進行按日期排序為例:
//引用java.io包里的所有類
import java.io.*;
import java.util.*;
public class FileOrder{
//按日期排序
public static void orderByDate(String fliePath) {
File file = new File(fliePath);
File[] fs = file.listFiles();
Arrays.sort(fs,new Comparator File(){
public int compare(File f1, File f2) {
long diff = f1.lastModified() – f2.lastModified();
if (diff 0)
return 1;
else if (diff == 0)
return 0;
else
return -1;
}
public boolean equals(Object obj) {
return true;
}
});
for (int i = fs.length-1; i -1; i–) {
System.out.println(fs[i].getName());
System.out.println(new Date(fs[i].lastModified()));
}
}
public static void main(String args[]){
orderByDate(“c:/java”); //調用方法對c:/java目錄下文件按日期排序
}
}
JAVA 日期排序
前提,假設你使用一個數組來保存一組開始時間+結束時間,當然,你也可以用其它的數據結構。
基本思路,1轉換為Date型,2使用Calendar類來比較兩個日期,3 自己實現compare方法:
各部分的例子:
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(“yyyy年MM月dd日”);
Date startDate1 = simpleDateFormat.parse(“2018年3月18日”);
Date startDate2 = simpleDateFormat.parse(“2018年3月12日”);
private void sort(ListDate dataList){
Collections.sort(dataList, new ComparatorDate() {
@Override
public int compare(Date o1, Date o2) {
if(d1 != null d2 != null){
Calendar c1 = Calendar.getInstance();
Calendar c2 = Calendar.getInstance();
c1.setTime(o1);
c2.setTime(o2);
return c1.After(c2);
}else{
return -1;
}
}
});
}
大概寫了下,具體你自己調調,還要注意異常處理。
java 怎麼對日期列進行排序
通過js的可以:
var dateRE = /^(\d{2})[\/\- ](\d{2})[\/\- ](\d{4})/;
function dmyOrdA(a, b){
a = a.replace(dateRE,”$3$2$1″);
b = b.replace(dateRE,”$3$2$1″);
if (ab) return 1;
if (a b) return -1;
return 0; }
function dmyOrdD(a, b){
a = a.replace(dateRE,”$3$2$1″);
b = b.replace(dateRE,”$3$2$1″);
if (ab) return -1;
if (a b) return 1;
return 0; }
function mdyOrdA(a, b){
a = a.replace(dateRE,”$3$1$2″);
b = b.replace(dateRE,”$3$1$2″);
if (ab) return 1;
if (a b) return -1;
return 0; }
function mdyOrdD(a, b){
a = a.replace(dateRE,”$3$1$2″);
b = b.replace(dateRE,”$3$1$2″);
if (ab) return -1;
if (a b) return 1;
return 0; }
測試:
dateArray = new Array(’15/10/2000′,’28/05/1999′,
’17/09/2005′,’06/12/2004′,’02/01/1998′);
dateArray.sort( dmyOrdA );
document.write(‘Ascending : ‘ + dateArray + ‘br /’);
Java項目中有按時間排序(可正序,可倒敘),熱度排序(可正序,可倒敘)該怎麼做?
數據是存在數據庫中,可以通過sql查詢實現數據的排序
數據存儲在redis中,通過zset實現排序
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/286963.html