java时间差计算
来源:互联网 发布:c语言全屏玫瑰花代码 编辑:程序博客网 时间:2024/06/05 19:26
转载请注明出处:
http://blog.csdn.net/user11223344abc?viewmode=contents
出自【蛟-blog】
直接上代码了,不过我还是简单说下这段代码的使用场景:
这是我在做一个订单详情的时候需要用到的一个方法。
具体需求是:
- 服务器会返回给我订单的创建时间
- 然后有一个需求前提就是说,当一个订单被创建后48小时不付款的话这个订单就自动取消。在不考虑本地时间被恶意篡改的情况下(System.currentTimeMillis()合理性),
那么针对这个需求最直接的逻辑是:
- 根据创单时间,结合48小时规则,得到结束时间
- 根据System.currentTimeMillis()得到现在的时间
- 用结束时间减去现在的时间就是这个我需要的时间差
具体代码实现如下:
public void testTimeCalc(){ DateFormat df = new SimpleDateFormat("yy-MM-dd hh:mm:ss"); //创单时间 long ctime = 1499739011000l;//7月11日10点10分10秒 String ctimeStr = df.format(new Date(ctime)); Log.e("timetest","ctimeStr 开始时间== " + ctimeStr); //根据创单时间去计算结束时间,创单48小时之后 Date startDate = new Date(ctime); Calendar endCalendar = new GregorianCalendar(); endCalendar.setTime(startDate); endCalendar.add(endCalendar.DATE, 2);//把日期往后增加一天.整数往后推,负数往前移动 Date endDate = endCalendar.getTime(); //这个时间就是日期往后推一天的结果 long endTime = endDate.getTime(); String endTimeStr = df.format(new Date(endTime)); Log.e("timetest","endTime 结束时间== " + endTimeStr); long currTime = System.currentTimeMillis();//现在 String currTimeStr = df.format(new Date(currTime)); Log.e("timetest","currTime 现在时间== " + currTimeStr); long diff = endTime - currTime; long day=diff/(24*60*60*1000); long hour=(diff/(60*60*1000)-day*24); long min=((diff/(60*1000))-day*24*60-hour*60); long s=(diff/1000-day*24*60*60-hour*60*60-min*60); Log.e("timetest","差异 == " + day+"天"+hour+"小时"+min+"分"+s+"秒"); }
阅读全文
0 0
- java 计算时间差
- java 中计算时间差
- java 计算时间差
- java计算时间差
- java计算时间差
- java 计算时间差
- java 计算时间差
- java计算时间差
- java计算时间差
- java计算时间差
- Java计算时间差
- java 计算时间差
- java计算时间差
- Java计算两个时间差
- Android Java计算时间差
- java 计算时间差
- Java中计算时间差
- java计算时间差
- TensorFlow 图像处理和解码操作函数概述
- 安装Delphi2007的时候出现未找到变量HAS_SLIP的定义
- Java I/O模型从BIO到NIO和Reactor模式
- js函数内部调用的含有回掉的函数,其中回掉函数可以拿到外部函数传递的实参
- 学习java第一天
- java时间差计算
- 628. Maximum Product of Three Numbers
- Hdu 4203 Doubloon Game 博弈+打表
- QML之自定义电池充电/电量显示效果
- 常用sql语句
- 阿里云ECS-centos6.8下 安装配置mysql5.7
- 《Java编程思想读书笔记》--对象导论
- MySQL删除外键约束
- Spring-boot实例学习之 Command line application单元测试