日期比较这样做有什么问题?执行不到try catch
来源:3-2 项目作业
Kueishui
2019-04-25 11:21:21
try {
//例如:2018-06-21
borrowDate = new SimpleDateFormat("yyyy-MM-dd").parse(eidtText_borrow_date.getText().toString());
// 例如:2018.06.21
Date returnDate = new SimpleDateFormat("yyyy.MM.dd").parse(text_return_date.getText().toString());
Log.e("MainActivity", "borrowDate" + borrowDate.getTime());
Log.e("MainActivity", "returnDate" + returnDate.getTime());
if (borrowDate.getTime() > returnDate.getTime()) {
Toast.makeText(MainActivity.this, "借书日期晚于还书日期,退出", Toast.LENGTH_LONG);
finish();
}
} catch (ParseException e) {
e.printStackTrace();
}
1回答
irista23
2019-04-25
Date的getTime()方法需要获取到毫秒数来进行比较,格式例如SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
除了上面方式,还可以调用Date的compareTo()方法来比较大小,例如int compareTo =
date1.compareTo(date2);date1小于date2返回-1,date1大于date2返回1,相等返回0;
还可以使用Date自带的before()或者after()方法比较,返回类型boolean
相似问题