`

java计算时间差比较时间大小

    博客分类:
  • java
 
阅读更多

今天需要比较时间在网上找到然后写下:

比如:现在是:2004-03-26 13:31:40
          过去是:2004-01-02 11:30:24
我现在要获得两个日期差,差的形式为:XX天XX小时XX分XX秒

 

方法一:
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

try{
    Date d1 = df.parse("2004-03-26 13:31:40");
    Date d2 = df.parse("2004-01-02 11:30:24");
    long diff = d1.getTime() - d2.getTime();
    long days = diff / (1000 * 60 * 60 * 24);
}catch (Exception e){
}

方法二:
   SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
   java.util.Date now = df.parse("2004-03-26 13:31:40");
   java.util.Date date=df.parse("2004-01-02 11:30:24");
   long l=now.getTime()-date.getTime();
   long day=l/(24*60*60*1000);
   long hour=(l/(60*60*1000)-day*24);
   long min=((l/(60*1000))-day*24*60-hour*60);
   long s=(l/1000-day*24*60*60-hour*60*60-min*60);
   System.out.println(""+day+"天"+hour+"小时"+min+"分"+s+"秒");

方法三:
   SimpleDateFormat dfs = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
   java.util.Date begin=dfs.parse("2004-01-02 11:30:24");
   java.util.Date end = dfs.parse("2004-03-26 13:31:40");
   long between=(end.getTime()-begin.getTime())/1000;//除以1000是为了转换成秒

   long day1=between/(24*3600);
   long hour1=between%(24*3600)/3600;
   long minute1=between%3600/60;
   long second1=between%60/60;
   System.out.println(""+day1+"天"+hour1+"小时"+minute1+"分"+second1+"秒");

 

====================================================

java 比较时间大小

String s1="2008-01-25 09:12:09";
String s2="2008-01-29 09:12:11";
java.text.DateFormat df=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Calendar c1=java.util.Calendar.getInstance();
java.util.Calendar c2=java.util.Calendar.getInstance();
try{
    c1.setTime(df.parse(s1));
    c2.setTime(df.parse(s2));
}catch(java.text.ParseException e){
    System.err.println("格式不正确");
}
int result=c1.compareTo(c2);
if(result==0){
    System.out.println("c1相等c2");
}else if(result<0){
    System.out.println("c1小于c2");
}else{
    System.out.println("c1大于c2");

}

分享到:
评论

相关推荐

    计算时间差以及比较日期大小

    利用此可以计算java中的时间之差以及比较日期大小

    java获取list中两元素时间差

    java获取list中两元素时间差

    最全Java常用日期处理工具类

    9.比较两个时间的大小 HH:mm:ss 10.按用户格式字符串距离今天的天数 11.cron "0 06 10 15 1 ? 2014" 专门用于处理springboard定时任务修改cron参数的日期处理方法 12.获取本月第一天(月初时间) 13.获取本月...

    强大的DateUtil

    包含日期偏移、生日计算、某个时间年月、是否是今天、计算第几周、时间差、比较大小以及间隔等常用业务时间计算方法、

    日期工具类

    14个常用的日期方法。1.获取当前时间,2.,...为时间减去分钟 ,10两个日期大小比较,11.判断时间是否超过一定的小时数 ,12获取当前日期往后一定的年数,13.计算两个日期之间相差的天数 ,14.字符串的日期格式的计算

    JAVA面试题最全集

    一、Java基础知识 1.Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。 2.字符串的操作: 写一个方法,实现字符串的反转,如:输入abc,输出cba 写一个方法,实现字符串的替换,如:输入...

    java范例开发大全

    实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 字符集的解码方法 113 实例85 寻找指定字符第一次出现的位置 114 实例86 寻找指定字符最后出现的位置 115 实例87 我究竟有多...

    java范例开发大全源代码

     实例81 按字母顺序比较大小 110  实例82 首尾相连 111  实例83 字符串间的比较 112  实例84 字符集的解码方法 113  实例85 寻找指定字符第一次出现的位置 114  实例86 寻找指定字符最后出现的位置 ...

    Java范例开发大全 (源程序)

     实例81 按字母顺序比较大小 110  实例82 首尾相连 111  实例83 字符串间的比较 112  实例84 字符集的解码方法 113  实例85 寻找指定字符第一次出现的位置 114  实例86 寻找指定字符最后出现的位置 115 ...

    java 面试题 总结

    从内存方面来看, Stateful Session Bean 与 Stateless Session Bean 比较, Stateful Session Bean 会消耗 J2EE Server 较多的内存,然而 Stateful Session Bean 的优势却在于他可以维持使用者的状态。 9、...

    Java范例开发大全(全书源程序)

    实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 字符集的解码方法 113 实例85 寻找指定字符第一次出现的位置 114 实例86 寻找指定字符最后出现的位置 115 实例87 我...

    java范例开发大全(pdf&源码)

    实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 字符集的解码方法 113 实例85 寻找指定字符第一次出现的位置 114 实例86 寻找指定字符最后出现的位置 115 实例87 我究竟有多...

    Java 2实用教程(第三版)实验指导与习题解答

    实验2 比较日期的大小 21 实验3 处理大整数 22 上机实践6 组件及事件处理 23 实验1 算术测试 23 实验2 信号灯 25 实验3 布局与日历 28 上机实践7 组件及事件处理2 31 实验1 方程求根 31 实验2 字体对话框 34 实验3 ...

    超级有影响力霸气的Java面试题大全文档

    从内存方面来看, Stateful Session Bean 与 Stateless Session Bean 比较, Stateful Session Bean 会消耗 J2EE Server 较多的内存,然而 Stateful Session Bean 的优势却在于他可以维持使用者的状态。 12、...

    并行计算课程设计(代码+执行文件+文档)

    卡罗方法进行并行处理,通过OpenMP、MPI、.NET、Java、Win32API等一系列并行技术和并行机制对该算法进行并行处理,从而也进一步熟悉了蒙特·卡罗方法的串行算法和并行算法,实现了用蒙特·卡罗方法计算出半径为1单位...

    关于JAVA面试的100题及其答案

    面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。 (2).继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种...

    Lockstep:Java框架,用于在网络上运行交互式仿真

    前一种方法的问题在于,它在模拟大小上的伸缩性很差。 后一种方法的问题在于,随着参与者人数的增加,它的伸缩性很差。 最佳的权衡将取决于应用程序。 这是点对点方法的框架。 概述 同行互相报告进度 每个对等方仅...

    并行计算课程设计(报告+代码+可执行文件)

    卡罗方法进行并行处理,通过OpenMP、MPI、.NET、Java、Win32API等一系列并行技术和并行机制对该算法进行并行处理,从而也进一步熟悉了蒙特·卡罗方法的串行算法和并行算法,实现了用蒙特·卡罗方法计算出半径为1单位...

Global site tag (gtag.js) - Google Analytics