Điều này có thể sẽ là một câu hỏi ngớ ngẩn, nhưng tôi không hiểu hàm ngày tháng java. Dưới đây là một số mã:Câu hỏi đơn giản về java SimpleDateFormat
SimpleDateFormat sdf = new SimpleDateFormat("hh:mm");
Date s = sdf.parse(var);
Calendar scal = java.util.GregorianCalendar.getInstance();
scal.setTime(s);
Log.w("Time: ", Long.toString(s.getTime()));
Nếu var = "10:00" tôi nhận được "64800000".
Nếu var = "11:00" tôi nhận được "68400000".
Nếu var = "12:00" tôi nhận được "28800000".
Nếu var = "13:00" tôi nhận được "75600000".
Nếu var = "14:00" tôi nhận được "79200000".
Nếu var = "00:00" tôi nhận được "28800000".
Có chuyện gì với 12:00? Tại sao, khi var = 12: 00 tôi có nhận được kết quả tương tự như khi nó là 00:00 không? Tất cả các kết quả khác có vẻ đúng. Tôi rõ ràng không hiểu chức năng ngày tháng java, nhưng tôi dường như không thể tìm thấy bất kỳ lời giải thích cho điều này bất cứ nơi nào. Điều này là screwing lên máy tính khoảng thời gian của tôi.
Câu hỏi của bạn không rõ ràng đối với tôi. Bạn đang đặt var ở đâu? Vì bạn đang sử dụng hh: mm không phải là thời gian quân sự - nên có lẽ đó là lý do tại sao bạn nhận được 00 cho 12. – CoolBeans