当前位置: 首页 > news >正文

java 计算距离现在几分,几个小时,几天

 Date now = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");//可以方便地修改日期格式
   String stroldnow = dateFormat.format( now );
   Date newdate =TextUtil.stringToDateYYYYMM(stroldnow);
Date newdateTime=TextUtil.addDate(newdate,2);
   String newtime=dateFormat.format( newdateTime );
   Long returnstr=TextUtil.dateDiff(stroldnow, newtime, "yyyy/MM/dd HH:mm:ss");

 

共用方法:

/**
* 比较两个世间差
* @param startTime
* @param endTime
* @param format
* @return
*/
public static String dateDiff(String startTime, String endTime,
String format) {
// 按照传入的格式生成一个simpledateformate对象
SimpleDateFormat sd = new SimpleDateFormat(format);
long nd = 1000 * 24 * 60 * 60;// 一天的毫秒数
long nh = 1000 * 60 * 60;// 一小时的毫秒数
long nm = 1000 * 60;// 一分钟的毫秒数
long ns = 1000;// 一秒钟的毫秒数
long diff;
long day = 0;
long hour = 0;
long min = 0;
long sec = 0;
long time=0;
String strTime="";
// 获得两个时间的毫秒时间差异
try {
diff = sd.parse(endTime).getTime() - sd.parse(startTime).getTime();
day = diff / nd;// 计算差多少天
hour = diff % nd / nh + day * 24;// 计算差多少小时
min = diff % nd % nh / nm + day * 24 * 60;// 计算差多少分钟
sec = diff % nd % nh % nm / ns;// 计算差多少秒
// 输出结果
//System.out.println("时间相差:" + day + "天" + (hour - day * 24) + "小时"
// + (min - day * 24 * 60) + "分钟" + sec + "秒。");
// System.out.println("hour=" + hour + ",min=" + min);
if(day>=1){
time=day;
strTime=time+"天前";
}
else if(hour>=1 && hour<24){
time=hour;
strTime=time+"小时前";
}
else{
if(min==0)
time=1;
time=min;
strTime=time+"分钟前";
}
// if (str.equalsIgnoreCase("h")) {
// return hour;
// } else {
// return min;
// }

} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// if (str.equalsIgnoreCase("h")) {
// return hour;
// } else {
// return min;
// }
return strTime;
}

转载于:https://www.cnblogs.com/xiaohaizhuimeng/p/5959550.html

相关文章:

  • pragma
  • VC/MFC使用OLE操作 EXCEL
  • js定时器的使用(实例讲解)
  • 1 storm基本概念 + storm编程规范及demo编写
  • 清北学堂模拟day6 花
  • awk之shell快速修改文件名
  • ajax测试Demo以及json简单的转化
  • 《深入理解JavaScript》—— JSON
  • VCS仿真 Dump Memory
  • 【读书笔记】《编程珠玑》第二章之算法设计的重要性
  • Web:AJAX的网络请求
  • Lambda表达式详解(转载)
  • JMeter 配置元件之计数器Counter
  • signalr-源码
  • iOS开发之内购-AppStore
  • 【面试系列】之二:关于js原型
  • Angular 响应式表单 基础例子
  • Flex布局到底解决了什么问题
  • go语言学习初探(一)
  • JavaWeb(学习笔记二)
  • Java编程基础24——递归练习
  • JAVA并发编程--1.基础概念
  • Laravel 中的一个后期静态绑定
  • Leetcode 27 Remove Element
  • leetcode386. Lexicographical Numbers
  • React Native移动开发实战-3-实现页面间的数据传递
  • Spring Security中异常上抛机制及对于转型处理的一些感悟
  • Xmanager 远程桌面 CentOS 7
  • 前端_面试
  • 实现菜单下拉伸展折叠效果demo
  • 移动互联网+智能运营体系搭建=你家有金矿啊!
  • 06-01 点餐小程序前台界面搭建
  • Linux权限管理(week1_day5)--技术流ken
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • ​ArcGIS Pro 如何批量删除字段
  • ​flutter 代码混淆
  • ​iOS安全加固方法及实现
  • !!java web学习笔记(一到五)
  • #周末课堂# 【Linux + JVM + Mysql高级性能优化班】(火热报名中~~~)
  • (C++)八皇后问题
  • (C语言)深入理解指针2之野指针与传值与传址与assert断言
  • (Redis使用系列) Springboot 整合Redisson 实现分布式锁 七
  • (搬运以学习)flask 上下文的实现
  • (板子)A* astar算法,AcWing第k短路+八数码 带注释
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (免费领源码)python#django#mysql校园校园宿舍管理系统84831-计算机毕业设计项目选题推荐
  • (心得)获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
  • (转)Sql Server 保留几位小数的两种做法
  • .htaccess 强制https 单独排除某个目录
  • .NET 指南:抽象化实现的基类
  • .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景
  • .NET学习教程二——.net基础定义+VS常用设置
  • .one4-V-XXXXXXXX勒索病毒数据怎么处理|数据解密恢复
  • @hook扩展分析