Java将String转换为日期然后比较

时间:2013-02-04 23:56:08

标签: java date datetime comparison

我有一个2D字符串数组

static String[][] TaskStorage = {
{"Task 1","02/07/13"},  
{"Task 2","02/08/13"},  
{"Task 3","02/09/13"},  
{"Task 4","02/10/13"},  
{"Task 5","02/11/13"},  
{"Task 6","02/03/13"},  
{"Task 7","02/04/13"},  
{"Task 8","02/05/13"},  
{"Task 9","02/06/13"},  
{"Task 10","03/01/13"}, 
{"Task 11","03/02/13"}, 
{"Task 12","03/03/13"}, 
};

我想打印所有TaskStorage [0] [i],其中TaskStorage [i] [1]是02/07和02/08。 考虑到今天的日期是02/04。今天的日期可以改为02/28。 todayDate将基于代码的执行时间 基本上是打印任务,提前两天。

这是我尝试过的:

SimpleDateFormat dateFormat = new SimpleDateFormat("mm/dd/yy");
TaskDate = dateFormat.parse(LinkStorage[i][1]);
if (todayDate.after(TaskDate)) {
    System.out.println("");
}

1 个答案:

答案 0 :(得分:2)

一种方法是使用SimpleDateFormat将字符串解析为Date个对象,然后通过Date API进行比较。

修改为问题:

  

以下是我的尝试。

SimpleDateFormat dateFormat = new SimpleDateFormat("mm/dd/yy");  
TaskDate = dateFormat.parse(LinkStorage[i][1]);  
if (todayDate.after(TaskDate)) {  
    System.out.println("")  
}  
     

不幸的是没有获得所需的输出

问题在于您的格式字符串,您要求分钟而不是。将"mm/dd/yy"更改为"MM/dd/yy",您应该有更好的运气。