Sto cercando di calcolare una differenza di tempo data, ma sto ottenendo alcuni risultati strani: Qui è la fonte:java differenza data di puzzle
import java.util.Calendar;
import java.util.Collections;
import java.util.Vector;
public class Main {
static Calendar dcal = Calendar.getInstance();
static Calendar ccal = Calendar.getInstance();
public static void main(String[] args) {
dcal.set(2011, 1, 27);
ccal.set(2011,2,1);
long dtime = dcal.getTimeInMillis();
long ctime = ccal.getTimeInMillis();
long diff = ctime - dtime;
int hours = (int) (diff/(1000 * 60 * 60));
System.out.println("hours->"+hours);
}
}
Quando ho creato ccal al 1 31 2011, la differenza di data è 96 ore ma quando l'ho impostato su 2 1 2011 la differenza di data è 48 ore. Come può essere? Qual è il rimedio?
Grazie,
Elliott
Grazie per le informazioni sul calendario che si muovono di default. –