如何在android中比较开始时间和结束时间?

时间:2014-11-18 05:38:26

标签: android android-timepicker datetime-comparison

我的问题是如何比较startTime和endTime之间的两个时间,

比较两次。

  1. 开始时间
  2. 结束时间。
  3. 我正在使用TimePickerDialog获取时间,我正在使用一个方法传递参数,例如startTime和endTime,我正在这样使用,

    //Method:
    boolean isTimeAfter(long startTime, long endTime) {
        if (endTime < startTime) {
            return false;
        } else {
            return true;
        }
    }
    
    String strStartTime = edtStartTime.getText().toString();
    String strEndTime = edtEndTime.getText().toString();
    
    long lStartTime = Long.valueOf(strStartTime);
    long lEndTime = Long.valueOf(strEndTime);
    
    if (isTimeAfter(lStartTime, lEndTime)) {
    
    } else {
    
    }
    

    获取错误:

    java.lang.NumberFormatException: Invalid long: "10:52"
    

    如何比较两次。请建议我。

2 个答案:

答案 0 :(得分:6)

首先,您必须将时间字符串转换为 SimpleDateFormat ,如下所示:

SimpleDateFormat sdf = new SimpleDateFormat("hh:mm");
Date inTime = sdf.parse(strStartTime);
Date outTime = sdf.parse(strEndTime);

然后按如下方式调用您的方法:

if (isTimeAfter(inTime, outTime)) {

} else {

}

boolean isTimeAfter(Date startTime, Date endTime) {
    if (endTime.before(startTime)) { //Same way you can check with after() method also.
        return false;
    } else {
        return true;
    }
}

你也可以比较,更大&amp;较少的startTime&amp; ENDTIME

int dateDelta = inTime.compareTo(outTime);
 switch (dateDelta) {
    case 0:
          //startTime and endTime not **Equal**
    break;
    case 1:
          //endTime is **Greater** then startTime 
    break;
    case -1:
          //startTime is **Greater** then endTime
    break;
}

答案 1 :(得分:0)

那呢:

Python manage.py Createsuperuser