java时间比较工具类分享

开发中经常需要比较时间,写了一个简易的工具类,分享一下:

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92


package com.ijiuyuan.common.utils;

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Date;

public class DiffTime {

    public static void main(String[] args){

        

        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        Date startTime = null;

        Date endTime = null;

        try {

            startTime = sdf.parse("2014-06-24 10:19:40");

            endTime=sdf.parse("2014-06-16 10:19:40");

        } catch (ParseException e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }

        

        long nd = 1000 * 24 * 60 * 60;// 一天的毫秒数

        long md = 1000 * 1 * 1 * 60;// 分钟的毫秒数

        long sd = 1000 * 1 * 1 * 1;// 毫秒数

        long diff =startTime.getTime()- new Date().getTime() ;

        

        long day = diff / nd;// 计算差多少天

        long minute=diff/md;

        long second=diff/sd;

        System.out.println(second);

        if(diff>=nd*7){

            System.out.println("预备中:"+second);

        }

        

        long endday = (endTime.getTime()- new Date().getTime()) / md;// 计算差多少天

        

        

        System.out.println(endday);

        

        if (day <= 7 && day >= 0) {

            

            

            if(minute>=0)

                System.out.println("即将开始");

            else {

                System.out.println("已结束");

            }

        } else if (day > 7) {

            System.out.println("预备中");

        } else {

            System.out.println("已结束");

        }

    }

    /**

     * 时间比较

     * <p>

     * 如果第一个时间大于第二时间返回1<br/>

     * 等于返回0<br/>

     * 小于返回-1

     * </p>

     * @param firstTime

     * @param secondTime

     * @return

     */

    public static int compare(Date firstTime,Date secondTime){

        long diff =firstTime.getTime()- secondTime.getTime() ;

        if(diff>0){

            return 1;

        }else if(diff==0){

            return 0;

        }else{

            return -1;

        }

    }

    /**

     * 是否值过大

     * @param firstTime

     * @return

     */

    public static boolean isTooLarge(Date firstTime){

        Calendar calendar=Calendar.getInstance();

        calendar.setTime(new Date());

        calendar.add(Calendar.YEAR, 1000);

        Date bigDate=calendar.getTime();

        if(compare(firstTime, bigDate)>0){

            return true;

        }else{

            return false;

        }

    }

}

时间: 2024-11-08 21:25:34

java时间比较工具类分享的相关文章

java时间处理工具类--DateUtils

package com.hexiang.utils; /** * @(#)DateUtil.java * * * @author kidd * @version 1.00 2007/8/8 */ import java.util.*; import java.text.*; import java.sql.Timestamp; public class DateUtils { /** * 时间范围:年 */ public static final int YEAR = 1; /** * 时间范围

java操作Excel工具类分享

import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.OutputStream; import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import org.apache.poi.hssf.usermodel.HS

JAVA时间Date工具类

package com.common.util; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class DateUtils { private StringBuffer buffer = new StringBuffer(); pri

java 时间处理工具类

+++++++++ ++++++++++ package DataUtils; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class DataUtil { /** * 预设不同的时间格式 */ //精确到年月日(英文) eg:2019-12-31 public static String F

JAVA对象任意深度克隆clone工具类分享

原文:JAVA对象任意深度克隆clone工具类分享 源代码下载地址:http://www.zuidaima.com/share/1550463408114688.htm package com.zuidaima.n_app.util; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import jav

[java工具类01]__构建格式化输出日期和时间的工具类

在之前的学习中,我写过一篇关于字符串格式化的,就主要设计到了时间以及日期的各种格式化显示的设置,其主要时通过String类的fomat()方法实现的. 我们可以通过使用不同的转换符来实现格式化显示不同的时间以及日期信息,但我们了解到,时间以及日期的转换符实在是太多了,导致我们无法十分方便的在需要的时候格式化出想要的日期时间输出格式. 然而在学习过程中,我们了解到类是可以相互调用的,以及静态方法是可以跨类使用的,,所以,通过本文,将构建一个显示时间日期的工具类,定义几个常用的日期时间格式,之后我们

[精品] 收集的27个java开发常用工具类.基本满足开发需求

原文:[精品] 收集的27个java开发常用工具类.基本满足开发需求 源代码下载地址:http://www.zuidaima.com/share/1596028005993472.htm 最近从网上收集的java开发常用的工具类,分享给大家.基本满足开发需求.推荐给热爱最代码以及java的牛牛们.   每个类都有注释的,欢迎大家可以下载使用. 字符编码:CharTools, base64:Base64 *.java Md5加密:  MD5*.java 上传:*Uploader* 生成缩略图类:T

Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类

Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类 ============================== ?Copyright 蕃薯耀 2017年9月13日 http://www.cnblogs.com/fanshuyao/ 直接上代码: import java.io.IOException; import java.lang.reflect.InvocationTargetException; import java.lang.ref

Redis Java客户端jedis工具类以及Redis实现的跨jvm的锁

Redis Java客户端jedis工具类以及Redis实现的跨jvm的锁 最近项目中使用redis,学习了一下,client端使用jedis-2.1.0 首先是一个redis实现的跨jvm的lock, 接着是一个简单封装的工具类,也对pipeline处理进行了几个常用的封装 然后是对应Spring的相关配置 Java代码   public class RedisLock { /** 加锁标志 */ public static final String LOCKED = "TRUE";