


Parse and format dates and times using the new DateTimeFormatter class and TemporalAccessor interface in Java 11
Use the new DateTimeFormatter class and TemporalAccessor interface in Java 11 to parse and format dates and times
Handle dates and times accurately and conveniently as time and date are widely used in modern applications Time is becoming more and more important. To meet this need, Java 11 introduces the new DateTimeFormatter class and TemporalAccessor interface, making the parsing and formatting of dates and times more flexible and easier.
The DateTimeFormatter class is a powerful tool for formatting and parsing dates and times. It provides a set of predefined formats and also allows developers to customize formats. At the same time, DateTimeFormatter also supports localization and time zone processing to meet date and time formats in different regions and needs. The following are some common DateTimeFormatter examples:
import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; public class DateTimeFormatterExample { public static void main(String[] args) { LocalDateTime dateTime = LocalDateTime.now(); // 格式化为字符串 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); String formattedDateTime = dateTime.format(formatter); System.out.println("Formatted Date and Time: " + formattedDateTime); // 解析字符串为日期和时间 String dateTimeString = "2022-01-01 12:00:00"; LocalDateTime parsedDateTime = LocalDateTime.parse(dateTimeString, formatter); System.out.println("Parsed Date and Time: " + parsedDateTime); } }
In the above example, we first create a DateTimeFormatter object to specify the date and time format. During the formatting process, we use the format pattern of yyyy-MM-dd HH:mm:ss
to format the current date and time into a string. Then, we use the format()
method of LocalDateTime
to format the date and time object into a string and print it out.
In addition, we can also parse strings into date and time objects through the parse()
method of DateTimeFormatter
. In this example, we use the same formatting pattern to parse a date and time string into a LocalDateTime
object and print it out.
In addition to using predefined format modes, we can also use other methods of DateTimeFormatter
to achieve more fine-grained date and time formatting. For example, we can use the DateTimeFormatterBuilder
class to build a custom format:
import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatterBuilder; public class CustomDateTimeFormatterExample { public static void main(String[] args) { LocalDate date = LocalDate.now(); DateTimeFormatter formatter = new DateTimeFormatterBuilder() .appendLiteral("Today is ") .appendValue(DateTimeFormatter.ISO_LOCAL_DATE) .appendLiteral(".") .toFormatter(); String formattedDate = date.format(formatter); System.out.println(formattedDate); } }
In the above example, we use the DateTimeFormatterBuilder
class to create a custom date Formatter. In this formatter, we first added a literal string "Today is " using the appendLiteral()
method, then added the date using the appendValue()
method, and finally Added a literal string ".". By using these methods, we can construct a date format that meets our needs.
In addition to the DateTimeFormatter class, Java 11 also introduces the TemporalAccessor interface, which can be used as a universal accessor for date and time objects. It provides a set of common methods that can access various parts of date and time objects through specific implementation classes such as LocalDateTime, LocalDate, etc. Here are some example usages of TemporalAccessor:
import java.time.LocalDateTime; import java.time.temporal.ChronoField; public class TemporalAccessorExample { public static void main(String[] args) { LocalDateTime dateTime = LocalDateTime.now(); int year = dateTime.get(ChronoField.YEAR); int month = dateTime.get(ChronoField.MONTH_OF_YEAR); int day = dateTime.get(ChronoField.DAY_OF_MONTH); int hour = dateTime.get(ChronoField.HOUR_OF_DAY); int minute = dateTime.get(ChronoField.MINUTE_OF_HOUR); int second = dateTime.get(ChronoField.SECOND_OF_MINUTE); System.out.println("Current Date: " + year + "-" + month + "-" + day); System.out.println("Current Time: " + hour + ":" + minute + ":" + second); } }
In the above example, we created a current date and time object using the LocalDateTime
class. We then use the get()
method and the ChronoField
enumeration to get the various parts of the date and time, such as year, month, day, hour, minute, and second. Finally, we join the pieces together and print them out.
By using the new DateTimeFormatter class and TemporalAccessor interface in Java 11, we can handle dates and times accurately and conveniently. Whether formatting date and time objects into strings, or parsing strings into date and time objects, these new utility classes provide flexible and easy-to-use methods to make date and time processing more efficient and reliable. Developers can choose the appropriate tool based on their needs to handle various date and time operations.
The above is the detailed content of Parse and format dates and times using the new DateTimeFormatter class and TemporalAccessor interface in Java 11. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Guide to Square Root in Java. Here we discuss how Square Root works in Java with example and its code implementation respectively.

Guide to Perfect Number in Java. Here we discuss the Definition, How to check Perfect number in Java?, examples with code implementation.

Guide to Random Number Generator in Java. Here we discuss Functions in Java with examples and two different Generators with ther examples.

Guide to Weka in Java. Here we discuss the Introduction, how to use weka java, the type of platform, and advantages with examples.

Guide to the Armstrong Number in Java. Here we discuss an introduction to Armstrong's number in java along with some of the code.

Guide to Smith Number in Java. Here we discuss the Definition, How to check smith number in Java? example with code implementation.

In this article, we have kept the most asked Java Spring Interview Questions with their detailed answers. So that you can crack the interview.

Java 8 introduces the Stream API, providing a powerful and expressive way to process data collections. However, a common question when using Stream is: How to break or return from a forEach operation? Traditional loops allow for early interruption or return, but Stream's forEach method does not directly support this method. This article will explain the reasons and explore alternative methods for implementing premature termination in Stream processing systems. Further reading: Java Stream API improvements Understand Stream forEach The forEach method is a terminal operation that performs one operation on each element in the Stream. Its design intention is
