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(计算机编程语言)_百度百科
形式: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测试工具和框架
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-百度百科
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语言如何输入一个(小时:分钟)格式的时间与系统时间比较,得到相差的秒数