最新文章专题视频专题关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
4种方法来在Java中比较两个日期 如何在Java中比较两个日期 4种方法来在Java中比较两个日期 如何避免被闪电击中 3种方法来避免被闪电击中 如何避免被闪电击中 3种方法来避免被闪电击中 如何治疗灰指甲(脚趾甲真菌症) 3种方法来治疗灰指甲(脚趾甲真菌症) 如何治疗灰指甲(脚趾甲真菌症) 3种方法来治疗灰指甲(脚趾甲真菌症) 如何创建WhatsApp账号 如何重定向URL 4种方法来重定向URL 如何重定向URL 4种方法来重定向URL 如何治疗疱疹 如何看懂地图 如何除去皮肤上的记号笔印记 3种方法来除去皮肤上的记号笔印记 如何除去皮肤上的记号笔印记 3种方法来除去皮肤上的记号笔印记 如何治疗背部痉挛 3种方法来治疗背部痉挛 如何治疗背部痉挛 3种方法来治疗背部痉挛 如何求等差数列的任意项 4种方法来求等差数列的任意项 4种方法来求等差数列的任意项 如何求等差数列的任意项 如何避免咬字不清 4种方法来避免咬字不清 4种方法来避免咬字不清 如何避免咬字不清 如何在iPhone上添加联系人 3种方法来在iPhone上添加联系人 3种方法来在iPhone上添加联系人 如何在iPhone上添加联系人 如何减掉腹部和体侧脂肪 3种方法来减掉腹部和体侧脂肪 3种方法来减掉腹部和体侧脂肪 如何减掉腹部和体侧脂肪 如何辨别耐克鞋的真假 如何将英语的动词转换为名词 3种方法来将英语的动词转换为名词 3种方法来将英语的动词转换为名词 如何将英语的动词转换为名词 如何转移iTunes余额 3种方法来转移iTunes余额 3种方法来转移iTunes余额 如何转移iTunes余额 如何跟女孩享受一夜情
当前位置: 首页 - 正文

如何在Java中比较两个日期

来源:懂视网 责编:小OO 时间:2022-08-30 19:23:05
文档

如何在Java中比较两个日期

方法1:使用compareTo:1、使用compareTo。2、创建日期对象。3、比较日期对象。方法2:使用Equals、After、和Before:1、使用equals、after、和before。2、用before方法比较日期。3、用after方法比较日期。4、用equals方法比较日期。方法3:使用Calendar类:1、使用calendar。2、 创建Calendar实例。3、用before比较cal1和cal2。4、用after比较cal1和cal2。5、用equals比较cal1和cal2。方法4:使用getTime:1、使用getTime。2、创建long类型的time对象。3、进行少于比较。4、进行大于比较。5、进行等于比较。
推荐度:
有多种方法可以比较Java日期。日期在计算机内部表示为(long型)时间点——自1970年1月1日以来经过的毫秒数。在Java中,Date是一个对象,这意味着它包含多个比较方法。任何比较两个日期的方法本质上都是在比较日期的时间。

方法1:使用compareTo

1使用compareTo。Date实现了Comparable<Date>,因此两个日期可以直接用compareTo方法进行比较。如果日期在同一时间点,则方法返回零。如果比较的日期在date参数之前,则返回一个小于零的值。如果被比较的日期在另一个date参数之后,则返回一个大于零的值。如果日期相等,则返回0值。

2创建日期对象。在开始比较之前,需要为每个日期创建对象。一种方法是使用SimpleDateFormat类。它允许在日期对象中轻松输入日期值。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); //用于在新的日期对象中声明值。创建日期时使用相同的日期格式Date date1 = sdf.parse("1995-02-23"); //date1是1995年2月23日Date date2 = sdf.parse("2001-10-31"); //date2 是2001年10月31日Date date3 = sdf.parse("1995-02-23"); //date3 是1995年2月23日

3比较日期对象。下面的代码将显示每种情况——小于、等于和大于。

date1.compareTo(date2); //date1 < date2,返回小于0的值date2.compareTo(date1); //date2 > date1,返回大于0的值date1.compareTo(date3); //date1 = date3,将在控制台中输出0

方法2:使用Equals、After、和Before

1使用equals、after、和before。可以用equals、after、和before方法比较日期。如果两个日期在同一时间点,equals方法将返回true。示例将使用之前创建的compareTo方法中的日期。

2用before方法比较日期。下列代码展示了true和false两种情况。如果date1在date2之前,before返回true。否则返回false。

System.out.print(date1.before(date2)); //输出trueSystem.out.print(date2.before(date2)); //输出false

3用after方法比较日期。下列代码展示了true和false两种情况。如果date2在date1之后,after返回true。否则返回false。

System.out.print(date2.after(date1));//输出trueSystem.out.print(date1.after(date2));//输出false

4用equals方法比较日期。下列代码展示了true和false两种情况。如果日期相等,equals返回true。否则返回false。

System.out.print(date1.equals(date3));//输出trueSystem.out.print(date1.equals(date2));//输出false

方法3:使用Calendar类

1使用calendar。Calendar类也有compareTo、equals、after和before方法,工作方式与上面描述的date类的方法相同。因此,如果日期信息保存在calendar类中,则不需要提取日期来执行比较。

2 创建Calendar实例。要使用Calendar方法,需要几个Calendar实例。幸运的是,你可以从已经创建的Date实例中获取时间。

Calendar cal1 = Calendar.getInstance(); //声明cal1Calendar cal2 = Calendar.getInstance(); //声明cal2Calendar cal3 = Calendar.getInstance(); //声明cal3cal1.setTime(date1); //将日期应用于cal1cal2.setTime(date2);cal3.setTime(date3);

3用before比较cal1和cal2。下面的代码应该会输出true,因为cal1在cal2之前。

System.out.print(cal1.before(cal2)); //将会输出true

4用after比较cal1和cal2。下面的代码应该会输出false,因为cal1在cal2之前。

System.out.print(cal1.after(cal2)); //输出false

5用equals比较cal1和cal2。下面的代码将展示true和false两种情况的示例。条件取决于被比较的calendar实例。代码应该会输出"true",然后在下一行输出"false"。

System.out.println(cal1.equals(cal3)); //输出true: cal1 == cal3System.out.print(cal1.equals(cal2)); //输出false: cal1 != cal2

方法4:使用getTime

1使用getTime。尽管前面的任何一种方法都可能更具可读性,因而也更可取,但是也可以直接比较两个日期的时间点。这是对两种原始数据类型的比较,因此可以使用"<"、">"和"=="来比较。

2创建long类型的time对象。在比较日期之前,必须使用前面创建的Date对象中的数据来创建长整型。幸好getTime()方法可以帮你完成大部分工作。

long time1 = getTime(date1); //用date1声明原始数据time1long time2 = getTime(date2); //用date2声明原始数据time2

3进行少于比较。使用小于号(<)比较这两个整数值。由于time1小于time 2,所以应该输出第一条消息。为了使语法正确使用了else语句。

if(time1 < time2){System.out.println("date1 is before date2"); //将会输出这句话,因为time1 <time2}else{System.out.println("date1 is not before date2");}

4进行大于比较。使用大于号(>)比较这两个整数值。由于time1大于time 2,所以应该输出第一条消息。为了使语法正确使用了else语句。

if(time2 > time1){System.out.println("date2 is after date1"); //将会输出这句话,因为time2 > time1 }else{System.out.println("date2 is not after date1");}

5进行等于比较。使用等于符号检查是否相等(==),从而比较这两个整数值是否相等。由于time1等于time3,所以应该输出第一个消息。如果程序执行了else语句,意味着这两个时间不相等。

if(time1 == time2){System.out.println("the dates are equal");}else{System.out.println("the dates are not equal"); //将会输出这句话,因为time1 != time2}

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:0731-84117792 E-MAIL:11247931@qq.com

文档

如何在Java中比较两个日期

方法1:使用compareTo:1、使用compareTo。2、创建日期对象。3、比较日期对象。方法2:使用Equals、After、和Before:1、使用equals、after、和before。2、用before方法比较日期。3、用after方法比较日期。4、用equals方法比较日期。方法3:使用Calendar类:1、使用calendar。2、 创建Calendar实例。3、用before比较cal1和cal2。4、用after比较cal1和cal2。5、用equals比较cal1和cal2。方法4:使用getTime:1、使用getTime。2、创建long类型的time对象。3、进行少于比较。4、进行大于比较。5、进行等于比较。
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top