1. System.currentTimeMillis()返回的是哪个时区时间?
返回的是utc0的时间
2. 如果上面返回的是utc0的时间,为什么new Date(System.currentTimeMillis())可以打印东八区的时间?
因为电脑时区设置成了东八区,所以Timezone.getDefault()是东八区,打印的时候会自动加上东八区的偏移量8*60*60*1000。
可以把电脑时区改成utc0,然后进行测试,会发现System.currentTimeMillis()打印的时间基本不会变,还是utc0的时间。
本文转自rongwei84n 51CTO博客,原文链接:http://blog.51cto.com/483181/1968743,如需转载请自行联系原作者