谈 计算时间的天数差

java.util.Date  表示特定的瞬间,精确到毫秒。它允许把日期解释为年、月、日、小时、分钟和秒值。它也允许格式化和解析日期字符串。

从JDK1.1开始,应该使用 Calendar 类实现日期和时间字段之间的转换,使用DateFormat类来格式化和解析日期字符串。Date的相应方法已废弃。

尽管Date类打算反映 协调世界时(UTC),但无法做到如此准确,这取决于Java虚拟机的主机环境。

Date()  分配 Date 对象并 初始化 对象,以表示分配它的时间(精确到毫秒)。

java.text.SimpleDateFormat

是一个以与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化(日期-->文本)、解析(文本-->日期)和规范化。

simpleDateFormate使得可以选择任何用户定义的日期--时间格式的模式。但是,仍然建议通过DateFormat中的getTimeInstance、getDateInstance 或  创建日期--时间格式器。每一个这样的类方法都能够返回一个以默认格式初始化的日期/时间格式器。可以根据需要使用applyPattern方法来修改格式模式。

java.util.Calendar

是一个抽象类,它为特定瞬间与一组诸如Year Month 、Day_of_month .hour 等日历字段之间的转换提供了一些方法,并为操作日历字段 提供了一些方法。瞬间可用毫秒值来表示,与其他语言环境敏感类一样,Calendar 提供了一个类方法  getInstance,以获得此类型的一个通用 的对象。Calendar的getInstance方法返回一个calendar对象,其日历字段已由当前日期和时间初始化。

 1 Calendar cal = Calendar.getInstance();
 2         Calendar cal2 = Calendar.getInstance();
 3         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
 4         Date st = new Date();
 5         st = sdf.parse("2001-10-10");
 6         cal.setTime(st);
 7
 8         Date et = new Date();
 9         et =sdf.parse("2001-10-15");
10         cal2.setTime(et);
11         long  gap =(cal2.getTimeInMillis()-cal.getTimeInMillis())/(1000*3600*24);
12         System.out.println(gap);

时间: 2024-10-25 04:34:12

谈 计算时间的天数差的相关文章

求两个时间的天数差 日期格式为 YYYY-MM-dd

//+---------------------------------------------------  //| 求两个时间的天数差 日期格式为 YYYY-MM-dd   //+---------------------------------------------------  function daysBetween(DateOne,DateTwo)  {       var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ('-

Java计算两个时间的天数差与月数差 LocalDateTime

/**  * 计算两个时间点的天数差  * @param dt1 第一个时间点  * @param dt2 第二个时间点  * @return int,即要计算的天数差  */ public static int dateDiff(LocalDateTime dt1,LocalDateTime dt2){  //获取第一个时间点的时间戳对应的秒数  long t1 = dt1.toEpochSecond(ZoneOffset.ofHours(0));  //获取第一个时间点在是1970年1月1日

Java中计算两个字符串日期之间或当前时间与指定时间的天数差

1 public static void main(String[] args) throws ParseException { 2 /** 3 * 获取当前时间 4 * 5 */ 6 Date date = new Date(); 7 /**转换提日期输出格式*/ 8 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 9 10 11 String a = "2020-01-0

oracle计算时间秒数差

--计算plsql处理时间差 --qzq declare time1 timestamp; --开始时间 time2 timestamp; --结束时间 sum1 number(9); --时间差(s) begin time1 := to_timestamp(to_char(sysdate,'yyyy-mm-dd hh24-mi-ss'),'yyyy-mm-dd hh24:mi:ss.ff9'); --处理任务 for i in 1..600000 loop select 1 into sum1

Js获取当前日期时间+日期印证+判断闰年+日期的天数差+日期格式化+JS判断某年某月有多少天

Js获取当前日期时间+日期验证+判断闰年+日期的天数差+日期格式化+JS判断某年某月有多少天 字符串转日期型+Js当前日期时间+日期验证+判断闰年+日期的天数差+日期格式化+日期所在年的第几周 日期时间脚本库方法列表Date.prototype.isLeapYear 判断闰年Date.prototype.Format 日期格式化Date.prototype.DateAdd 日期计算Date.prototype.DateDiff 比较日期差Date.prototype.toString 日期转字符

计算天数差、获取当前时间、获取百分比

//计算天数差 function getDayNumber(date1, date2) { //默认格式为"20030303",根据自己需要改格式和方法 var year1 = date1.substr(0, 4); var year2 = date2.substr(0, 4); var month1 = date1.substr(4, 2); var month2 = date2.substr(4, 2); var day1 = date1.substr(6, 2); var day

MySQL两时间计算、年份差、月份差、天数差

1. 获取当前日期 SELECT NOW(),CURDATE(),CURTIME() 结果类似:   NOW() CURDATE() CURTIME()   2016-08-01 16:25:46 2016-08-01 16:25:46 2. 获取前一天 SELECT  DATE_SUB(CURDATE(),INTERVAL 1 DAY); 当前日期2018-09-17 结果: 3. 获取后一天 SELECT  DATE_SUB(CURDATE(),INTERVAL -1 DAY); 当前日期2

JS计算从某年某月某日到某年某月某日的间隔天数差

直接贴代码了,你直接拷贝然后另存为html就可以用了,不多说,请看: <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"><head> <meta charset="utf-8" /> <title></title> <script type="text/javascript

js验证两个日期是否是同一个年月,并计算天数差

/*** 将日期转化为 yyyy-MM 格式 .* 帮助验证 两个时间要在同一个年月份* @param dateStr*/function formatYearMonth(b_date){    var b_date_year = b_date.getYear();    var b_date_month = b_date.getMonth()+1; if(b_date_month < 10){        b_date_month = "0" + b_date_month ;