java 中怎么比较两个时间相差的秒数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 中怎么比较两个时间相差的秒数相关的知识,希望对你有一定的参考价值。

是要Date的
如果没有Date的请告诉我怎样把Date转成您说的类型
尽量简洁
谢谢了
15分

java 计算两个时间相差可以用getTime()来获得两个时间的毫秒数,可以这样计算得出两个时间的秒数的相差如下:

public  int calLastedTime(Date startDate)
long a = new Date().getTime();
long b = startDate.getTime();
int c = (int)((a - b) / 1000);
return c;

扩展资料:

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程  。

Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等  。

参考资料:百度百科-JAVA

参考技术A

方法:

java 计算两个时间相差可以用getTime()来获得两个时间的毫秒数,可以这样计算得出两个时间的秒数的相差如下:

public  int calLastedTime(Date startDate) long a = new Date().getTime();long b = startDate.getTime();int c = (int)((a - b) / 1000);return c;

扩展资料:

1、通过Date类来获取当前时间  

Date day=new Date();   

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

System.out.println(df.format(day));     

2、通过System类中的currentTimeMillis方法来获取当前时间 

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  System.out.println(df.format(System.currentTimeMillis()));   

3、通过Calendar类来获取当前时间   

Calendar c = Calendar.getInstance();//可以对每个时间域单独修改   

int year = c.get(Calendar.YEAR);  

int month = c.get(Calendar.MONTH);   

int date = c.get(Calendar.DATE);    

System.out.println(year + "/" + month + "/" + date + " " +hour + ":" +minute + ":" + second);    

4、 通过Date类来获取当前时间   

Date date = new Date();    

String year = String.format("%tY", date);

String month = String.format("%tB", date);   

String day = String.format("%te", date);    

System.out.println("今天是:"+year+"-"+month+"-"+day);   

参考资料:

Java(计算机编程语言)_百度百科

参考技术B

形式:Date模式。

原则:通过计算两个日期的毫秒数,他们的差除以一天的毫秒数,即可得到我们想要的两个日期相差的天数。

输入:

/**
* 通过时间秒毫秒数判断两个时间的间隔
* @param date1
* @param date2
* @return
*/
public static int differentDaysByMillisecond(Date date1,Date date2)
       int days = (int) ((date2.getTime() - date1.getTime()) / (1000*3600*24));        return days;

测试:

public static void main(String[] args)

String dateStr = "2008-1-1 1:21:28";
String dateStr2 = "2010-1-2 1:21:28";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat format2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        try

Date date2 = format.parse(dateStr2);
Date date = format.parse(dateStr);

System.out.println("两个日期的差距:" + differentDays(date,date2));
System.out.println("两个日期的差距:" + differentDaysByMillisecond(date,date2));
catch (ParseException e)
e.printStackTrace();


扩展资料:

1、通过Date类来获取当前时间  

Date day=new Date();   

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

System.out.println(df.format(day));     

2、通过System类中的currentTimeMillis方法来获取当前时间 

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  System.out.println(df.format(System.currentTimeMillis()));   

3、通过Calendar类来获取当前时间   

Calendar c = Calendar.getInstance();//可以对每个时间域单独修改   

int year = c.get(Calendar.YEAR);  

int month = c.get(Calendar.MONTH);   

int date = c.get(Calendar.DATE);    

System.out.println(year + "/" + month + "/" + date + " " +hour + ":" +minute + ":" + second);    

4、 通过Date类来获取当前时间   

Date date = new Date();    

String year = String.format("%tY", date);   

String month = String.format("%tB", date);   

String day = String.format("%te", date);    

System.out.println("今天是:"+year+"-"+month+"-"+day);   

参考资料:IT专家网-8个超实用的Java测试工具和框架

参考技术C

java中Date时间可以用getTime()来获得1970年1月1日到当前时间的毫秒数,所以可以这样来计算得出两个时间的秒数:

try 

Date a = new Date();

Thread.sleep(3000);

Date b = new Date();

long interval = (b.getTime() - a.getTime())/1000;

System.out.println("两个时间相差"+interval+"秒");//会打印出相差3秒

 catch (InterruptedException e) 

e.printStackTrace();

扩展资料:

Java是一个面向对象的语言。对程序员来说,这意味着要注意应中的数据和操纵数据的方法(method),而不是严格地用过程来思考。在一个面向对象的系统中,类(class)是数据和操作数据的方法的集合。数据和方法一起描述对象(object)的状态和行为。

每一对象是其状态和行为的封装。类是按一定体系和层次安排的,使得子类可以从超类继承行为。在这个类层次体系中有一个根类,它是具有一般行为的类。Java程序是用类来组织的。

参考资料:

java-百度百科

参考技术D

java中Date时间可以用getTime()来获得1970年1月1日到当前时间的毫秒数,所以可以这样来计算得出两个时间的秒数:

try 

Date a = new Date();

Thread.sleep(3000);

Date b = new Date();

long interval = (b.getTime() - a.getTime())/1000;

System.out.println("两个时间相差"+interval+"秒");//会打印出相差3秒

 catch (InterruptedException e) 

e.printStackTrace();  

或者先将两个时间转换为毫秒相减,得到相差的毫秒数 

long number = date1.getTime()-date2.getTime(); 

然后在将毫秒转换为date类型就可以了

DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

Calendar calendar = Calendar.getInstance(); 

calendar.setTimeInMillis(number);
System.out.println(number+ " = " + formatter.format(calendar.getTime())); 

扩展资料

两个日期之间相差的秒数

public  int calLastedTime(Date startDate)
long a = new Date().getTime();
long b = startDate.getTime();
int c = (int)((a - b) / 1000);
return c;

如何在Python中获取自特定时间以来的秒数

【中文标题】如何在Python中获取自特定时间以来的秒数【英文标题】:How to get the number of seconds since a particular time in Python 【发布时间】:2016-04-17 03:18:53 【问题描述】:

如何在 Python 中获取自 2016 年 1 月 1 日 00:00:00 以来的秒数?

【问题讨论】:

这可以通过简单的谷歌搜索来解决。 最近这些问题是怎么回事? 零努力,请给我代码-type。 @N.Wouda SO Meta 的主题如果还没有被问到? @R.Murray 我很确定这将是一个骗子哈哈 :) @N.Woulda 下次只需将我指向重复线程的链接即可,无需多言。 【参考方案1】:

以秒为单位获得您所在时区的时差:

import time
import datetime
today = datetime.datetime.today()

start_date = datetime.datetime(2016, 1, 1, 0, 0, 0)
time_difference = abs(today - start_date)
print time_difference.seconds

请阅读日期时间文档:https://docs.python.org/2/library/datetime.html#module-datetime

如果您希望将来某个日期的时差为负数,请删除 abs() 函数。

【讨论】:

【参考方案2】:
import time
print(time.time())

这将返回自纪元以来的秒数

【讨论】:

以上是关于java 中怎么比较两个时间相差的秒数的主要内容,如果未能解决你的问题,请参考以下文章

C语言如何输入一个(小时:分钟)格式的时间与系统时间比较,得到相差的秒数

c语言怎么求两个日期相差的秒数,日期格式20140325150630和20140324150000

java 计算两个时间相差多少秒

MySQL计算两个日期相差的天数月数年数

java 两个日期相减的怎么做?

sql 语句中如何比较当前时间与指定时间是不是相同