您的位置:

java比较日期,java比较日期实验报告

本文目录一览:

java 日期怎么比较大小?

例子:

String beginTime=new String("2017-06-09 10:22:22");

String endTime=new String("2017-05-08 11:22:22"); 

直接用Date自带方法before()和after()比较

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

Date sd1=df.parse(beginTime);

Date sd2=df.parse(endTime);

System.out.println(sd1.before(sd2));

System.out.println(sd1.after(sd2));

用String的compareTo()方法:

Integer i=beginTime.compareTo(endTime);

System.out.println(i);

返回正值是代表左侧日期大于参数日期,反之亦然,日期格式必须一致

转成date格式换成秒数比较秒数大小,getTime()方法

Date sd1=df.parse(beginTime);

Date sd2=df.parse(endTime);

long long1 =sd1.getTime()

long long2= sd2.getTime()

扩展资料:

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

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

参考资料:java文档date类

如何用java比较两个时间或日期的大小

首先

按照一定的格式输入两个日期的字符串

然后用simpledateformat类转换成date实例date1,

date2

然后

calendar

cal1

=

calendar.getinstance();

calendar

cal2

=

calendar.getinstance();

cal1.settime(date1);

cal2.settime(date2);

这样你就有了两个表示所输入日期的calendar实例了

calendar可以做很多事

比如用cal1.after(cal2)或者cal1.before(cal2)或者cal1.equals(cal2)或者cal1.compareto(cal2)来比较两个日期时间先后

比如cal.get(calendar.year)可以得到表示该日期年份的整数

同理cal.get(calendar.month)可以得到月份

甚至可以用cal.gettimeinmillis()得到表示该日期的毫秒数

有了这些方法,简单的计算之后就可以得到需要的相差的信息

如果楼主是来求现成的源代码的-

-

我没有

java输入的日期与当前的日期做比较?

Java中日期时间比较

java.text.SimpleDateFormat 类 ----时间日期格式化

java.util.Date类 ----构造时间日期

java.util.Date类compareTo方法 ----比较日期时间

java中日期时间的比较要用到java.text.SimpleDateFormat 类和java.util.Date类compareTo方法,SimpleDateFormat类用于时间日期格式化,将日期时间格式化为制定的格式,compareTo方法用于比较日期时间。以下为我写过的程序片段:

String data=doc.getItemValueString("fd_ngr");

//拟稿时间

String data4=data.substring(data.indexOf(' '),data.length());

int panduan=data4.indexOf("-");

int panduan1=data4.indexOf("/");

ec_dbsy=vi_dbsy.getAllEntries();

//构造日期格式yyyy-MM-NN

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");

SimpleDateFormat formatter2 = new SimpleDateFormat("MM/dd/yyyy");

if(data4.length()!=0)

{

if (panduan!=-1){

try {

Date date1 = formatter.parse(data4);

Date date0=new Date();

Date date2 =formatter.parse("2006-08-31");

Date date3=formatter.parse("2006-07-01");

int number1=date1.compareTo(date2);

int number2=date1.compareTo(date3);

//返回 0 表示时间日期相同

//返回 1 表示日期1日期2

//返回 -1 表示日期1日期2

if( number2==1)

{

if(number1==-1)

{

System.out.println("日期格式符合要求!");

System.out.println("日期格式符合要求的yyyy-MM-dd的文档ID是:"+doc.getUniversalID());

String mPath="\\"+"\\10.52.4.4\\d$\\Program Files\\WebSphere\\AppServer\\installedApps\\oa1\\oaWeb20061030_war.ear\\oaWeb20061030.war\\doc_fw";

DaglImpl daglImpl = new DaglImpl();

daglImpl.addFW(doc,mPath); //归档处理

}

}

} catch (ParseException e) {

e.printStackTrace();

}

}

java怎么比较两个日期(年和月)的大小

你好,没有这样的函数。不过我可以给你一段比较的代码。希望对你有帮助。代码如下:import java.text.DateFormat;

import java.text.SimpleDateFormat;

import java.util.Date; /**

*

* @author hp

*/

public class test { public static void main(String args[]) {

int i= compare_date("2009-11-12 15:21", "2009-12-11 09:59");

System.out.println("i=="+i);

} public static int compare_date(String DATE1, String DATE2) {

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

try {

Date dt1 = df.parse(DATE1);

Date dt2 = df.parse(DATE2);

if (dt1.getTime() dt2.getTime()) {

System.out.println("dt1 在dt2前");

return 1;

} else if (dt1.getTime() dt2.getTime()) {

System.out.println("dt1在dt2后");

return -1;

} else {

return 0;

}

} catch (Exception exception) {

exception.printStackTrace();

}

return 0;

}

}

java中如何计算出两个日期之间相差多少天

思路就是根据它们相差的毫秒数除以每天的毫秒数(60*60*24*1000),代码如下:

public static void main(String[] args) throws ParseException {

String date1="1987-01-01";

String date2="2010-01-01";

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-mm-dd");

Date d1=sdf.parse(date1);

Date d2=sdf.parse(date2);

long daysBetween=(d2.getTime()-d1.getTime()+1000000)/(60*60*24*1000);

System.out.println("1987-01-01 与 2010-01-01 相隔 "+daysBetween+" 天");

}

运行结果如下:

扩展资料:

Java使用以下三种方法来比较两个日期:

1、使用 getTime() 方法获取两个日期(自1970年1月1日经历的毫秒数值),然后比较这两个值。

2、使用方法 before(),after() 和 equals()。例如,一个月的12号比18号早,则 new Date(99, 2, 12).before(new Date (99, 2, 18)) 返回true。

3、使用 compareTo() 方法,它是由 Comparable 接口定义的,Date 类实现了这个接口。

SimpleDateFormat 是一个以语言环境敏感的方式来格式化和分析日期的类。SimpleDateFormat 允许你选择任何用户自定义日期时间格式来运行

例如:

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

这一行代码确立了转换的格式,其中 yyyy 是完整的公元年,MM 是月份,dd 是日期,HH:mm:ss 是时、分、秒。

注意:有的格式大写,有的格式小写,例如 MM 是月份,mm 是分;HH 是 24 小时制,而 hh 是 12 小时制。

以上实例编译运行结果如下:

当前时间为: 2018-09-14 10:16:34

参考资料:

Java官方API接口-Date

菜鸟教程-Java 日期时间

java输入三个日期比较大小该怎么做?

输入要比较的日期以及代码。

java输入三个日期比较大小有以下两种方法:

方式一:

String time1="2015-05-06 08:08:08";

String time2="2015-05-06 08:06:08";

try {

SimpleDateFormat foramt=new SimpleDateFormat("yyyy-MM-dd hh:MM:ss");

Date mDate1=foramt.parse(time1);

Date mDate2=foramt.parse(time2);

int result= mDate1.compareTo(mDate2);

} catch (ParseException e) {

e.printStackTrace();

}

方式二:

String time1="2015-05-06 08:08:08";

String time2="2015-05-06 08:06:08";

try {

SimpleDateFormat foramt=new SimpleDateFormat("yyyy-MM-dd hh:MM:ss");

Date mDate1=foramt.parse(time1);

Date mDate2=foramt.parse(time2);

long result=mDate1.getTime()-mDate2.getTime();

} catch (ParseException e) {

e.printStackTrace();

}