JDK Tutorials - Herong's Tutorial Examples - v6.32, by Herong Yang
Partial Date and Time Objects and Classes
This section provides a tutorial example on how to use Date-Time classes that represents partial date and time objects like java.time.LocalDate, java.time.LocalDate, etc.
The Date-Time API introduced in JDK 1.8 also supports several other classes to represent partial date and time objects. Here is full list of partial date and time object classes:
To test out these partial date and time object classes, I wrote the following example program, PartialDateTimeTest.java:
/* PartialDateTimeTest.java * Copyright (c) HerongYang.com. All Rights Reserved. */ import java.time.*; import java.time.temporal.ChronoField; class PartialDateTimeTest { public static void main(String[] a) { java.io.PrintStream out = System.out; out.println("toString():"); out.println("Year = " + Year.now().toString()); out.println("YearMonth = " + YearMonth.now().toString()); out.println("MonthDay = " + MonthDay.now().toString()); out.println("LocalDate = " + LocalDate.now().toString()); out.println("LocalTime = " + LocalTime.now().toString()); out.println("LocalDateTime = " + LocalDateTime.now().toString()); out.println("OffsetTime = " + OffsetTime.now().toString()); LocalDate leap = LocalDate.parse("2012-02-29"); out.println(); out.println("Leap day:"); out.println("toString() = " + leap.toString()); LocalDate nextYear = leap.plusYears(1); out.println("1 year later:"); out.println("toString() = " + nextYear.toString()); OffsetTime delhi = OffsetTime.parse("12:59:38.000+05:30"); OffsetTime montreal = OffsetTime.parse("03:29:38.000-04:00"); out.println(); out.println("Local times:"); out.println("Delhi = " + delhi.toString()); out.println("Montreal = " + montreal.toString()); out.println("isEqual() = " + montreal.isEqual(delhi)); } }
When running PartialDateTimeTest.java, I got the following output:
herong> java PartialDateTimeTest.java toString(): Year = 2024 YearMonth = 2024-02 MonthDay = --02-19 LocalDate = 2024-02-19 LocalTime = 17:28:49.836992 LocalDateTime = 2024-02-19T17:28:49.837194 OffsetTime = 17:28:49.837650-03:00 Leap day: toString() = 2012-02-29 1 year later: toString() = 2013-02-28 Local times: Delhi = 12:59:38+05:30 Montreal = 03:29:38-04:00 isEqual() = true
Table of Contents
java.time.Instant - Representing a Moment of Time
java.time.Instant Usage Examples
java.time.Instant - get(INSTANT_SECONDS) Error
Converting java.util.Date to java.time.Instant
java.time.ZonedDateTime - Calendar and Timezone
java.time.ZonedDateTime Usage Examples
Converting java.util.GregorianCalendar to java.time.ZonedDateTime
java.time.OffsetDateTime - Calendar and UTC Offset
java.time.OffsetDateTime Usage Examples
java.time.LocalDateTime - Local Date and time without Timezone
►Partial Date and Time Objects and Classes
java.time.format.DateTimeFormatter - Date-Time Strings
java.time.Duration - Time Durations
java.time.Duration Usage Examples
java.time.Period - Periods in Days and Months
java.time.Period Usage Examples
Date, Time and Calendar Classes
Date and Time Object and String Conversion
Number Object and Numeric String Conversion
Locales, Localization Methods and Resource Bundles
Calling and Importing Classes Defined in Unnamed Packages
HashSet, Vector, HashMap and Collection Classes
Character Set Encoding Classes and Methods
Encoding Conversion Programs for Encoded Text Files
Datagram Network Communication
DOM (Document Object Model) - API for XML Files
DTD (Document Type Definition) - XML Validation
XSD (XML Schema Definition) - XML Validation
XSL (Extensible Stylesheet Language)
Message Digest Algorithm Implementations in JDK
Private key and Public Key Pair Generation
PKCS#8/X.509 Private/Public Encoding Standards
Digital Signature Algorithm and Sample Program
"keytool" Commands and "keystore" Files
KeyStore and Certificate Classes
Secret Key Generation and Management
Cipher - Encryption and Decryption
The SSL (Secure Socket Layer) Protocol
SSL Socket Communication Testing Programs