我想設置日期 - 實例的小時和分鐘。我有3個解決方案。設置帶日曆或日期時間的日期
我應該服用什麼,爲什麼? :
版本1:
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(Calendar.MILLISECOND, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MINUTE, 8);
calendar.set(Calendar.HOUR, 30);
return calendar.getTime();
版本2:
ZonedDateTime i = date.toInstant()
.atZone(ZoneId.systemDefault())
.withHour(8)
.withMinute(30);
return Date.from(i.toInstant());
版本3:
ZonedDateTime i = date.toInstant()
.atZone(ZoneId.systemDefault())
.withHour(8)
.withMinute(30);
return new Date(i.toEpochSecond());
它不會幫助你的第一個版本試圖將小時設置爲30,而你的第二個和第三個版本對秒或毫秒不起作用...... –
我會說版本2.它最少使用遺留API 。 – Barend
即使你改正了......你可以去任何方法 – Akshay