ตัวอย่างในบทความนี้ส่วนใหญ่เกี่ยวกับคุณสมบัติใหม่ใน Java 8 และตัวอย่างที่เกี่ยวข้องของเวลาและวันที่ API ดังนี้:
แพ็คเกจ com.effective.common.base.date; นำเข้า java.time.instant; นำเข้า java.time.localdate; นำเข้า java.time.localdatetime; นำเข้า java.time.localtime; นำเข้า java.time.localtime; นำเข้า java.time.period; java.time.temporal.chronounit; นำเข้า java.util.date;/** * คลาสเครื่องมือวันที่ * @author yanweiqi * @since 2016-5-6 * */ชั้นเรียนสาธารณะ localdateutils {private zone zone zone = zoneid.systemdefault (); convertTodate (วันที่สตริง) พ่นข้อยกเว้น {localDate localDate = null; ถ้า (null == วันที่) {โยน nullpointerexception ใหม่ ("วันที่ไม่ใช่ null");} else {localDate = localDate.Parse (วันที่) localDateTime convertTolocaldatetime (วันที่สตริง) {localDateTime localDateTime = null; ถ้า (null == วันที่) {โยน nullpointerexception ใหม่ ("วันที่ไม่ใช่ null");} {localDatetime = localDatetime.parse (วันที่); */วันที่สาธารณะคงที่ convertTodate (localDate localDate) {ทันที = localDate.atStartOfday (). Atzone (โซน) .toinstant (); วันที่กลับมา (ทันที);}/** * localdate จนถึงวันที่ * @param localdateTime * @return localDateTime.atzone (โซน) .toinstant (); วันที่ส่งคืน (ทันที);}/** * วันที่ localdate * @param วันที่ * @return localdate */สาธารณะ localdate converttolocaldate (วันที่) {ทันที = วันที่ * @param วันที่ * @return localdate */สาธารณะคงที่ localtime convertToLocaltime (วันที่วันที่) {ทันที = วันที่. toinstant (); ส่งคืน ConvertTolocaldatetime (ทันที) .tolocaltime ();}/** * วันที่) {Instant ทันที = date.toInstant (); return ConvertTolocaldatetime (ทันที);}/** * ทันทีไปยัง LocalDateTime * @param ทันที * @return */public localDateTime convertTolocaldatetime @return */Public Static Instant ConvertToInstant (localDateTime localDateTime) {ส่งคืน localDateTime.atzone (โซน) .toinstant ();}/** * localdate เพื่อทันที * @param localdate * @return */สาธารณะ localdate.atstartofday (โซน) .toinstant ();}/** * localdate to localDateTime * @param localDate * @return localDateTime */สาธารณะคงที่ localDateTime convertTolocaldateTime (localDate localDate) FormatStyle * @return */Formatter สตริงสาธารณะ (LocalDateTime localDateTime, String String Stylele) {ส่งคืน DatetimeFormatter.ofpattern (FormatStyle). Format (localDatetime); ปีจำนวนเต็ม) {return sourcedate.withyear (ปี);}/** * ตั้งค่าเดือน * @param sourcedate * @param เดือน * @return localDateTime */สาธารณะ localdateTime setMonth (LocalDatetime Sourcedate, Inteeger เดือน) localDateTime */สาธารณะคงที่ localDateTime setDayOfmonth (localDateTime sourcedate, จำนวนเต็ม dayofmonth) {return sourcedate.withdayofmonth (dayofmonth);}/** * set hour * @param sourcedate * @param ชั่วโมง sourcedate.withhour (ชั่วโมง);}/** * ตั้งค่านาที * @param sourcedate * @param นาที * @return */สาธารณะคงที่ localdateTime setMinute (localDateTime Sourcedate, Integer นาที) SetSecond (LocalDateTime Sourcedate, Integer Second) {return sourcedate.withSecond (ที่สอง);}/** * แก้ไขปีเดือนและวัน * @param Sourcedate * @param ปี * @param เดือน * @param dayofmonth * @return {return sourcedate.withyear (ปี) .wardmonth (เดือน) .withdayofmonth (dayofmonth);}/** * แก้ไขเวลานาทีและวินาที * @param sourcedate * @param ชั่วโมง * @param นาที * @param วินาที * @return */ sourcedate.withhour (ชั่วโมง). withminute (นาที). witchsecond (วินาที);}/** * คำนวณจำนวนวันที่แตกต่าง * @param Begindate * @param enddate * @return */สาธารณะคงที่ period.getDays ();}/*** การเพิ่มวันที่และการลบ* @param จำนวนปริมาณ* @param Unit ยูนิต* @param วันที่ดั้งเดิม* @@return localdate วันที่หลังจากการเพิ่มขึ้น*/ @suppresswarnings ("access-access") 0) {resultDate = localDate.now (). plus (num, unit);} else {resultDate = localDate.now (). ลบ (Math.Abs (num), หน่วย);} return resultDate; นอกจากนี้*/@suppresswarnings ("access access") สาธารณะคงที่ localDateTime addlocaldatetime (Long num, chronounit unit, localDateTime localDateTime) {localDateTime resultDateTime; if (num> 0) {resultDateTime = localDateTime localDateTime.now (). minus (math.abs (num), unit);} return resultDateTime;}/*** เพิ่มและลบ* @param num number* @param Unit ยูนิต* @param LocalTime LocalTime LocalTime localtime) {localtime resulttime; if (num> 0) {resulttime = localtime.now (). plus (num, unit);} else {resulttime = localtime.now (). minus (math.abs (num),}} returntime; "yyyy-mm-dd hh: mm: ss"); system.out.println (rr); localdateTime time2 = addlocaldatetime (-2, chronounit.hours, time); string yy = formatter (time2, "yyyy-mm-dd hh: mm: ss");รหัสเกี่ยวข้องกับการใช้คลาสเวลาและวันที่และมีความคิดเห็นง่าย ๆ ซึ่งคุณสามารถอ้างอิงได้
สรุป
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้เกี่ยวกับการวิเคราะห์เวลาการเขียนโปรแกรม Java และอินสแตนซ์ API วันที่และฉันหวังว่ามันจะเป็นประโยชน์กับทุกคน เพื่อนที่สนใจสามารถอ้างถึงหัวข้ออื่น ๆ ที่เกี่ยวข้องในเว็บไซต์นี้ต่อไป หากมีข้อบกพร่องใด ๆ โปรดฝากข้อความไว้เพื่อชี้ให้เห็น ขอบคุณเพื่อนที่ให้การสนับสนุนเว็บไซต์นี้!