获取日期返回差异的结果?

时间:2015-08-08 17:02:11

标签: java calendar

如果日期参数是2015-08-08,在我的国家(时区= +7),那个月的日期将是8 - 正是我想要的。但是在我的伴侣的国家(时区= -8),这个月的日子是7。

谁能告诉我为什么?

Calendar cal = Calendar.getInstance();
cal.setTime(date);
int day = cal.get(Calendar.DAY_OF_MONTH);

1 个答案:

答案 0 :(得分:0)

Calendar#getInstance正在使用默认时区,默认情况下是您自己的时区。您看到的任何更改都会根据您当地的时区反映出来。

如果您想更改它,可以将-Duser.timezone作为参数传递给您的程序,以确保它在特定时区内启动。