java - 比较日期和时间

标签 java netbeans

<分区>

我需要比较两个日期并知道它们是否相等或 < 或 >

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

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

            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
            Date date1 = sdf.parse("2009-12-31");
            Date date2 = sdf.parse("2010-01-31");

            System.out.println(sdf.format(date1));
            System.out.println(sdf.format(date2));

            if(date1.compareTo(date2)>0){
                System.out.println("Date1 is after Date2");
            }else if(date1.compareTo(date2)<0){
                System.out.println("Date1 is before Date2");
            }else if(date1.compareTo(date2)==0){
                System.out.println("Date1 is equal to Date2");
            }else{
                System.out.println("How to get here?");
            }

        }catch(ParseException ex){
            ex.printStackTrace();
        }
    }
}

上面的代码不能正常工作.. 我试过这种格式 MM-dd-YYYY 它只检查年份是否 > 比它给出的第一个日期 >。 例如:我以这种方式比较 d1 = 01-07-2014 d2 = 01-06-2014.. 结果应该是 d1 >d2 但它告诉 d1 等于 d2

请帮帮我

最佳答案

Java.util.Date 类有比较日期的 before 和 after 方法。

检查 date1.before(date2)date1.after(date2)

关于java - 比较日期和时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20964860/

相关文章:

eclipse - netbeans中的打开方法

java - 应用引擎身份验证

Java抽象类获取扩展类的类型

java - 进行单元测试时无法将Value 设置为 MutableLiveData - 抛出 java.lang.reflect.InvocableTargetException

java - 在 Java 中编译/构建项目时将 jar 复制到输出文件夹

java - 如何使用jython jar将python模块添加到java中

java - 如何使用zk的定时器在没有一个组件的情况下刷新所有页面

java - 使用 wsgen 时未找到类/名称错误

java - NetBeans IDE,设置命令行参数并作为主项目运行,但是没有显示任何内容

java - 如何在 Netbeans 中设置环境变量?