0

我正在尝试比较我的 android 应用程序中的日期,但它没有。它始终为空。

这是我的代码。

        GregorianCalendar startdate = new GregorianCalendar(2012, 3, 3, 0, 00);
        GregorianCalendar enddate = new GregorianCalendar(2012, 3, 4, 0, 00);

        for (int i = 0; i < newdate.length; i++) {
            try {
                SimpleDateFormat formatter = new SimpleDateFormat(
                        "MM/dd/yyyy k:mm");
                d[i] = formatter.parse(newdate[i]);

                if (startdate.equals(d[i])) {

                    startPoint = i;

                }
                if (enddate.equals(d[i])) {

                    endPoint = i;

                }

                // val2[i]=
                // DateTimeFormat.getFormat("yyyy-MM-dd HH:mm:ss").parse
            } catch (Exception e) {
                // TODO: handle exception
            }

        }

startPoint 和 endpont 始终为空。在这种情况下我不能使用 equal 方法吗?

谢谢

4

1 回答 1

5

您正在使用GregorianCalendar#equals()检查,并且由于d[i](ie Date) 的类型不存在相等性(GregorianCalendar不能等于Date)。

快速修复(未测试):

if (startdate.getTime().equals(d[i])){
    startPoint=i;
}
于 2013-04-07T08:21:04.880 回答