“Java Calendar”的版本间的差异
		
		
		
		
		
		跳到导航
		跳到搜索
		
			
		
		
	
| Jihongchang(讨论 | 贡献)   (建立内容为“<syntaxhighlight lang="java"> import org.junit.jupiter.api.Test;  import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java…”的新页面) | 
| (没有差异) | 
2025年8月13日 (三) 07:33的最新版本
import org.junit.jupiter.api.Test;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;
public class CalendarTest {
    @Test
    public void test() {
        long currentTimeMillis = System.currentTimeMillis();
        long quotient = currentTimeMillis / Integer.MAX_VALUE;
        long remainder = currentTimeMillis % Integer.MAX_VALUE;
        int remainderInt = (int) remainder;
        Calendar calendar = Calendar.getInstance();
        calendar.setTimeInMillis(currentTimeMillis);
        TimeZone timeZone = calendar.getTimeZone();
        System.out.println(timeZone);
        for (int i = 0; i < quotient; i++) {
            calendar.add(Calendar.MILLISECOND, -Integer.MAX_VALUE);
        }
        calendar.add(Calendar.MILLISECOND, -remainderInt);
        Date date = calendar.getTime();
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
        String s = simpleDateFormat.format(date);
        System.out.println(s);
    }
}
输出:
sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=31,lastRule=null]
1970-01-01 08:00:00.000
差8小时是因为中国是东8区