Tôi nhận được hai ngày làm giá trị Chuỗi và tôi muốn kiểm tra thời gian bắt đầu sớm hơn thời gian kết thúc. Tôi so sánh chúng vì nó là không có chuyển đổi chúng sang ngày sử dụng SimpleDateFormat
, như thế này:so sánh ngày ở định dạng Chuỗi
String startTime = "2013-01-02 14:25:56";
String endTime = "2013-01-02 14:30:56";
if(endTime.compareTo(startTime) > 0){
System.out.println("End time is greater than start time");
}
Là nó thực sự cần thiết để chuyển đổi chúng cho đến nay và so sánh? Tôi sẽ bỏ lỡ bất cứ điều gì? Tôi có làm đúng không?
định dạng yyyy-mm-dd là tốt vì nếu bạn sắp xếp các loại giá trị này, bạn sẽ nhận được các giá trị chính xác, nếu bạn có mm.dd.yyyy hoặc dd.mm.yyyy, bạn sẽ nhận được kết quả sai ... tại một cái nhìn đầu tiên, tất cả đều ok –
Nếu bạn chắc chắn sẽ luôn có cùng định dạng này, thì bạn an toàn ... –
Đáng chú ý là tại sao nó hoạt động theo cách bạn có các chuỗi: [phân loại theo từ điển] (http://en.wikipedia.org/wiki/Lexicographical_order) –