Trái tim tôi đang chảy máu nội bộ sau khi phải đi quá sâu để trừ hai ngày để tính toán khoảng thời gian trong số ngày:Làm thế nào để bạn trừ Ngày tháng trong Java?
GregorianCalendar c1 = new GregorianCalendar();
GregorianCalendar c2 = new GregorianCalendar();
c1.set(2000, 1, 1);
c2.set(2010,1, 1);
long span = c2.getTimeInMillis() - c1.getTimeInMillis();
GregorianCalendar c3 = new GregorianCalendar();
c3.setTimeInMillis(span);
long numberOfMSInADay = 1000*60*60*24;
System.out.println(c3.getTimeInMillis()/numberOfMSInADay); //3653
mà nó chỉ có 2 dòng mã trong .NET, hoặc bất kỳ ngôn ngữ hiện đại, bạn tên .
Đây có phải là điều tệ hại của java không? Hoặc là có một phương pháp ẩn tôi nên biết?
Thay vì sử dụng GregorianCalendar, bạn có thể sử dụng lớp Date trong util? Nếu vậy, tôi có nên xem những thứ tinh tế như năm 1970 không?
Cảm ơn
tại sao bạn sử dụng c3? Afaik bạn có thể bỏ ra ít nhất hai dòng cho c3;) – ZeissS