在java的程序里date类型怎么比较大小呀?

急... 展开
 我来答
浩浩看体坛
2019-02-28 · TA获得超过3.3万个赞
知道答主
回答量:1829
采纳率:0%
帮助的人:56.7万
展开全部

有两个方法:

方法一:

两个Date类型的变量可以通过compareTo方法来比较。此方法的描述是这样的:如果参数 Date 等于此 Date,则返回值 0;如果此 Date 在 Date 参数之前,则返回小于 0 的值;如果此 Date 在 Date 参数之后,则返回大于 0 的值。

方式二:

Date.after()这样的方式不能比较出相等的时间。

扩展资料:

Date类可以在java.util包中找到,用一个long类型的值表示一个指定的时刻。它的一个有用的构造函数是Date(),它创建一个表示创建时刻的对象。

getTime()方法返回Date对象的long值。在下面的程序中,我使用Date()构造函数创建一个表示程序运行时刻的对象,并且利用getTime()方法找到这个日期代表的毫秒数量:

import java.util.*;

public class Now {

public static void main(String[] args) {

Date now = new Date();

long nowLong = now.getTime();

System.out.println("Value is " + nowLong);

}

}

参考资料来源:百度百科——java日期函数

crazyyql
推荐于2019-08-19 · TA获得超过2107个赞
知道答主
回答量:20
采纳率:0%
帮助的人:2461
展开全部

在java的程序里比较date类型的方法如下:

1、java.util.Date类实现了Comparable接口,可以直接调用Date的compareTo()方法来比较大小,compareTo()方法的返回值,date1小于date2返回-1,date1大于date2返回1,相等返回0如下。

String beginTime = "2018-07-28 14:42:32";

String endTime = "2018-07-29 12:26:32";

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

try {

Date date1 = format.parse(beginTime);

Date date2 = format.parse(endTime);

int compareTo = date1.compareTo(date2);

System.out.println(compareTo);

} catch (ParseException e) {

e.printStackTrace();

}

2、通过Date自带的before()或者after()方法比较,如下。

String beginTime = "2018-07-28 14:42:32";

String endTime = "2018-07-29 12:26:32";

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

try {

Date date1 = format.parse(beginTime);

Date date2 = format.parse(endTime);

boolean before = date1.before(date2);

System.out.println(before);

} catch (ParseException e) {

e.printStackTrace();

}

3、通过调用Date的getTime()方法获取到毫秒数来进行比较,如下。

String beginTime = "2018-07-28 14:42:32";

String endTime = "2018-07-29 12:26:32";

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

try {

Date date1 = format.parse(beginTime);

Date date2 = format.parse(endTime);

long beginMillisecond = date1.getTime();

long endMillisecond = date2.getTime();

System.out.println(beginMillisecond > endMillisecond);

} catch (ParseException e) {

e.printStackTrace();

}

扩展资料:

1、Java编程技巧之一,return 一个空的集合,而不是 null。如果一个程序返回一个没有任何值的集合,请确保一个空集合返回,而不是空元素。这样你就不用去写一大堆 ”if else” 判断null元素。

2、Java编程技巧之二,小心使用 String。因为字符串相加或者拼接的方式都会在对象池中查找字符串是否存在,如果不存在则创建,这样在拼接的过程中会产生大量中间过程的字符串,占用内存资源。

3、Java编程技巧之三,StringBuilder效率优于StringBuffer,但是StringBuffer线程安全。

参考资料来源:ImportNew-Java 8简明教程

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
含光君06
推荐于2019-09-08 · TA获得超过1.5万个赞
知道答主
回答量:5
采纳率:0%
帮助的人:1183
展开全部

两个Date类型的变量可以通过compareTo方法来比较。

方法一:

java.util.Date类实现了Comparable接口,可以直接调用Date的compareTo()方法来比较大小

compareTo()方法的返回值,date1小于date2返回-1,date1大于date2返回1,相等返回0

方法二:

通过Date自带的before()或者after()方法比较

before()或者after()方法的返回值为boolean类型

方法三:

通过调用Date的getTime()方法获取到毫秒数来进行比较

参考资料:

百度百科——java日期函数

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yihla5739
高粉答主

推荐于2019-10-19 · 每个回答都超有意思的
知道答主
回答量:149
采纳率:100%
帮助的人:4.4万
展开全部

两个Date类型的变量可以通过compareTo方法来比较。此方法的描述是这样的:如果参数 Date 等于此 Date,则返回值 0;如果此 Date 在 Date 参数之前,则返回小于 0 的值;如果此 Date 在 Date 参数之后,则返回大于 0 的值。

实际上比较的是自1970 年 1 月 1 日 00:00:00 GMT以来的毫秒数。毫秒数越大的时间越大。

String DateStr1 = "2014-08-21 10:20:16";

String DateStr2 = "2014-08-27 15:50:35";

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

Date dateTime1 = dateFormat.parse(DateStr1);

Date dateTime2 = dateFormat.parse(DateStr2);

int i = dateTime1.compareTo(dateTime2); 

System.out.println(i < 0); 

扩展资料:

在windows下编译java文件、执行:

1、先创建一个txt,更改为test.java。

2、编写代码,为输出为holloword。

3、找到cmd,并进行打开cmd。

4、编译java文件,输入命令为javac test.java。

5、如果没有报错,查看当前目录下是否有class文件产生。

6、执行class文件,在命令输入java test,输出为holloword。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
elietian
推荐于2017-04-22 · TA获得超过1065个赞
知道小有建树答主
回答量:835
采纳率:0%
帮助的人:656万
展开全部
Date a;
Date b;
假设现在你已经实例化了a和b
a.after(b)返回一个boolean,如果a的时间在b之后(不包括等于)返回true

b.before(a)返回一个boolean,如果b的时间在a之前(不包括等于)返回true

a.equals(b)返回一个boolean,如果a的时间和b相等返回true
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式