cari
RumahJavajavaTutorialMenghuraikan dan memformat tarikh dan masa menggunakan kelas DateTimeFormatter baharu dan antara muka TemporalAccessor dalam Java 11

Gunakan kelas DateTimeFormatter dan antara muka TemporalAccessor dalam Java 11 untuk menghuraikan dan memformat tarikh dan masa

Memandangkan masa dan tarikh digunakan secara meluas dalam aplikasi moden, pengendalian tarikh dan masa dengan tepat dan mudah menjadi semakin penting. Untuk memenuhi keperluan ini, Java 11 memperkenalkan kelas DateTimeFormatter baharu dan antara muka TemporalAccessor, menjadikan penghuraian dan pemformatan tarikh dan masa lebih fleksibel dan lebih mudah.

KelasDateTimeFormatter ialah alat yang berkuasa untuk memformat dan menghuraikan tarikh dan masa. Ia menyediakan satu set format yang dipratentukan dan juga membenarkan pembangun menyesuaikan format. Pada masa yang sama, DateTimeFormatter juga menyokong penyetempatan dan pemprosesan zon waktu untuk memenuhi format tarikh dan masa di kawasan dan keperluan yang berbeza. Berikut ialah beberapa contoh DateTimeFormatters biasa:

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);
    }
}

Dalam contoh di atas, kami mula-mula mencipta objek DateTimeFormatter untuk menentukan format tarikh dan masa. Semasa proses pemformatan, kami menggunakan mod format yyyy-MM-dd HH:mm:ss untuk memformat tarikh dan masa semasa ke dalam rentetan. Kami kemudian menggunakan kaedah format() LocalDateTime untuk memformat objek tarikh dan masa ke dalam rentetan dan mencetaknya. yyyy-MM-dd HH:mm:ss的格式模式,将当前的日期和时间格式化为字符串。然后,我们使用LocalDateTimeformat()方法,将日期和时间对象格式化为字符串,并将其打印出来。

另外,我们还可以通过DateTimeFormatterparse()方法,将字符串解析为日期和时间对象。在这个示例中,我们使用相同的格式模式,将一个日期和时间字符串解析为LocalDateTime对象,并将其打印出来。

除了使用预定义的格式模式外,我们还可以使用DateTimeFormatter的其他方法来实现更加细粒度的日期和时间格式化。例如,我们可以使用DateTimeFormatterBuilder类来构建自定义的格式:

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);
    }
}

在上面的示例中,我们使用DateTimeFormatterBuilder类来创建一个自定义的日期格式化器。在这个格式化器中,我们首先使用appendLiteral()方法添加了一个字面量字符串"Today is ",然后使用appendValue()方法添加了日期,最后再添加了一个字面量字符串"。"。通过使用这些方法,我们可以构建出符合自己需求的日期格式。

除了DateTimeFormatter类外,Java 11还引入了TemporalAccessor接口,该接口可以用作日期和时间对象的通用访问器。它提供了一组通用的方法,可以通过具体的实现类如LocalDateTime、LocalDate等来访问日期和时间对象的各个部分。以下是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);
    }
}

在上面的示例中,我们使用LocalDateTime类创建了一个当前的日期和时间对象。然后,我们使用get()方法和ChronoField

Selain itu, kami juga boleh menghuraikan rentetan ke dalam objek tarikh dan masa melalui kaedah parse() DateTimeFormatter. Dalam contoh ini, kami menggunakan corak pemformatan yang sama untuk menghuraikan rentetan tarikh dan masa ke dalam objek LocalDateTime dan mencetaknya.

Selain menggunakan mod format yang dipratentukan, kami juga boleh menggunakan kaedah lain DateTimeFormatter untuk mencapai pemformatan tarikh dan masa yang lebih terperinci. Sebagai contoh, kita boleh menggunakan kelas DateTimeFormatterBuilder untuk membina format tersuai: 🎜rrreee🎜 Dalam contoh di atas, kami menggunakan kelas DateTimeFormatterBuilder untuk mencipta peranti pemformat tarikh tersuai. Dalam pemformat ini, kami mula-mula menambah rentetan literal "Hari ini ialah " menggunakan kaedah appendLiteral(), dan kemudian menambah tarikh menggunakan kaedah appendValue() Akhir sekali, a rentetan literal "." ditambah. Dengan menggunakan kaedah ini, kami boleh membina format tarikh yang memenuhi keperluan kami. 🎜🎜Selain kelas DateTimeFormatter, Java 11 juga memperkenalkan antara muka TemporalAccessor, yang boleh digunakan sebagai pengakses universal untuk objek tarikh dan masa. Ia menyediakan satu set kaedah biasa yang boleh mengakses pelbagai bahagian objek tarikh dan masa melalui kelas pelaksanaan tertentu seperti LocalDateTime, LocalDate, dll. Berikut ialah beberapa contoh penggunaan TemporalAccessor: 🎜rrreee🎜 Dalam contoh di atas, kami mencipta objek tarikh dan masa semasa menggunakan kelas LocalDateTime. Kami kemudian menggunakan kaedah get() dan penghitungan ChronoField untuk mendapatkan pelbagai bahagian tarikh dan masa, seperti tahun, bulan, hari, jam, minit dan kedua. Akhirnya, kami menggabungkan kepingan bersama-sama dan mencetaknya. 🎜🎜Dengan menggunakan kelas DateTimeFormatter dan antara muka TemporalAccessor baharu dalam Java 11, kami boleh mengendalikan tarikh dan masa dengan tepat dan mudah. Sama ada memformat objek tarikh dan masa ke dalam rentetan, atau menghuraikan rentetan ke dalam objek tarikh dan masa, kelas utiliti baharu ini menyediakan kaedah yang fleksibel dan mudah digunakan untuk menjadikan pemprosesan tarikh dan masa lebih cekap dan boleh dipercayai. Pembangun boleh memilih alat yang sesuai berdasarkan keperluan mereka untuk mengendalikan pelbagai operasi tarikh dan masa. 🎜

Atas ialah kandungan terperinci Menghuraikan dan memformat tarikh dan masa menggunakan kelas DateTimeFormatter baharu dan antara muka TemporalAccessor dalam Java 11. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan?Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan?Mar 17, 2025 pm 05:46 PM

Artikel ini membincangkan menggunakan Maven dan Gradle untuk Pengurusan Projek Java, membina automasi, dan resolusi pergantungan, membandingkan pendekatan dan strategi pengoptimuman mereka.

Bagaimanakah saya membuat dan menggunakan perpustakaan Java Custom (fail JAR) dengan pengurusan versi dan pergantungan yang betul?Bagaimanakah saya membuat dan menggunakan perpustakaan Java Custom (fail JAR) dengan pengurusan versi dan pergantungan yang betul?Mar 17, 2025 pm 05:45 PM

Artikel ini membincangkan membuat dan menggunakan perpustakaan Java tersuai (fail balang) dengan pengurusan versi dan pergantungan yang betul, menggunakan alat seperti Maven dan Gradle.

Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu?Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu?Mar 17, 2025 pm 05:44 PM

Artikel ini membincangkan pelaksanaan caching pelbagai peringkat di Java menggunakan kafein dan cache jambu untuk meningkatkan prestasi aplikasi. Ia meliputi persediaan, integrasi, dan faedah prestasi, bersama -sama dengan Pengurusan Dasar Konfigurasi dan Pengusiran PRA Terbaik

Bagaimanakah saya boleh menggunakan JPA (Java Constence API) untuk pemetaan objek-objek dengan ciri-ciri canggih seperti caching dan malas malas?Bagaimanakah saya boleh menggunakan JPA (Java Constence API) untuk pemetaan objek-objek dengan ciri-ciri canggih seperti caching dan malas malas?Mar 17, 2025 pm 05:43 PM

Artikel ini membincangkan menggunakan JPA untuk pemetaan objek-relasi dengan ciri-ciri canggih seperti caching dan pemuatan malas. Ia meliputi persediaan, pemetaan entiti, dan amalan terbaik untuk mengoptimumkan prestasi sambil menonjolkan potensi perangkap. [159 aksara]

Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka?Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka?Mar 17, 2025 pm 05:35 PM

Kelas kelas Java melibatkan pemuatan, menghubungkan, dan memulakan kelas menggunakan sistem hierarki dengan bootstrap, lanjutan, dan pemuat kelas aplikasi. Model delegasi induk memastikan kelas teras dimuatkan dahulu, yang mempengaruhi LOA kelas tersuai

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Persekitaran pembangunan bersepadu PHP yang berkuasa

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual