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

我有一个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(""); } 

一种方法是使用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" ,您应该有更好的运气。