您的位置:

java时间排序,java时间排序怎么排

本文目录一览:

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实现排序