溫馨提示×

SDK8中的日期和時間API如何使用

小樊
83
2024-09-04 10:16:37
欄目: 編程語言

在Java SDK 8中,日期和時間API是通過java.time包提供的

  1. LocalDate:表示日期(年、月、日),不包含時間信息。
import java.time.LocalDate;

public class Main {
    public static void main(String[] args) {
        LocalDate currentDate = LocalDate.now();
        System.out.println("當前日期: " + currentDate);

        LocalDate birthDate = LocalDate.of(2000, 1, 1);
        System.out.println("出生日期: " + birthDate);
    }
}
  1. LocalTime:表示時間(小時、分鐘、秒、納秒),不包含日期信息。
import java.time.LocalTime;

public class Main {
    public static void main(String[] args) {
        LocalTime currentTime = LocalTime.now();
        System.out.println("當前時間: " + currentTime);

        LocalTime specificTime = LocalTime.of(14, 30, 0);
        System.out.println("特定時間: " + specificTime);
    }
}
  1. LocalDateTime:表示日期和時間,結(jié)合了LocalDateLocalTime。
import java.time.LocalDateTime;

public class Main {
    public static void main(String[] args) {
        LocalDateTime currentDateTime = LocalDateTime.now();
        System.out.println("當前日期和時間: " + currentDateTime);

        LocalDateTime specificDateTime = LocalDateTime.of(2025, 12, 31, 23, 59, 59);
        System.out.println("特定日期和時間: " + specificDateTime);
    }
}
  1. ZonedDateTime:表示帶有時區(qū)信息的日期和時間。
import java.time.ZonedDateTime;

public class Main {
    public static void main(String[] args) {
        ZonedDateTime currentZonedDateTime = ZonedDateTime.now();
        System.out.println("當前帶時區(qū)的日期和時間: " + currentZonedDateTime);
    }
}
  1. Period:表示一段時間,主要用于以年、月、日為單位的日期計算。
import java.time.LocalDate;
import java.time.Period;

public class Main {
    public static void main(String[] args) {
        LocalDate currentDate = LocalDate.now();
        LocalDate birthDate = LocalDate.of(2000, 1, 1);

        Period age = Period.between(birthDate, currentDate);
        System.out.println("年齡: " + age.getYears() + " 歲");
    }
}
  1. Duration:表示一段時間,主要用于以秒、毫秒為單位的時間計算。
import java.time.LocalTime;
import java.time.Duration;

public class Main {
    public static void main(String[] args) {
        LocalTime startTime = LocalTime.now();
        // 模擬一些操作
        try {
            Thread.sleep(5000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        LocalTime endTime = LocalTime.now();

        Duration duration = Duration.between(startTime, endTime);
        System.out.println("經(jīng)過的時間: " + duration.getSeconds() + " 秒");
    }
}

這些類和方法可以幫助你根據(jù)需求處理日期和時間。更多詳細信息和用法,請參閱官方文檔

0