Soalan: Bagaimanakah cara menukar java.util.Date atau java .util.Calendar objek kepada jenis rangka kerja java.time yang sesuai?
Jawapan:
Untuk menukar a java.util.Date to Instant, gunakan kaedah toInstant:
<code class="java">Instant instant = myUtilDate.toInstant();</code>
Untuk objek java.util.Calendar, gunakan kaedah toInstant :
<code class="java">Instant instant = myUtilCalendar.toInstant();</code>
Untuk menukar java.util.GregorianCalendar kepada ZonedDateTime, gunakan kaedah toZonedDateTime:
<code class="java">if (myUtilCalendar instanceof GregorianCalendar) { GregorianCalendar gregCal = (GregorianCalendar) myUtilCalendar; ZonedDateTime zdt = gregCal.toZonedDateTime(); }</code>
Ekstrak Instant daripada OffsetDateTime dan gunakannya untuk mencipta java.util.Date:
<code class="java">java.util.Date myUtilDate = java.util.Date.from(odt.toInstant());</code>
Begitu juga, ekstrak Instant daripada ZonedDateTime:
<code class="java">java.util.Date myUtilDate = java.util.Date.from(zdt.toInstant());</code>
Tukar ZonedDateTime kepada GregorianCalendar menggunakan kaedah dari:
>java.util.Calendar myUtilCalendar = java.util.GregorianCalendar.from(zdt);Dari LocalDate ke ZonedDateTime<h3></h3>Pergi dari LocalDate ke ZonedDateTime memerlukan penetapan zon waktu:<p></p>
<pre class="brush:php;toolbar:false"><code class="java">LocalDate localDate = zdt.toLocalDate();
ZonedDateTime zdt = localDate.atStartOfDay(zoneId);</code></pre>Dari LocalTime ke ZonedDateTime<h3></h3>Begitu juga, untuk LocalTime: <p></p>
Atas ialah kandungan terperinci Bagaimana untuk Menukar Antara Jenis java.util.Date dan java.time?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!