欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java如何判斷Date是上午還是下午

 更新時間:2025年03月08日 11:00:46   作者:早起的年輕人  
文章介紹了三種在Java中判斷Date對象是上午還是下午的方法:使用Calendar類、使用Java 8的java.time包以及使用SimpleDateFormat進行格式化輸出,每種方法都有代碼示例和解釋,幫助開發(fā)者根據(jù)具體需求選擇合適的方法

java判斷Date是上午還是下午

我要用Java生成表格統(tǒng)計信息,如下圖所示:

所以就誕生了本文的內(nèi)容。

在 Java 里,判斷 Date 對象代表的時間是上午還是下午有多種方式,下面為你詳細介紹不同的實現(xiàn)方法。

方式一:使用 java.util.Calendar

Calendar 類可以用來獲取 Date 對象中的各個時間字段,通過 HOUR_OF_DAY 字段能判斷是上午還是下午。

import java.util.Calendar;
import java.util.Date;

public class DateAmPmCheckWithCalendar {
    public static void main(String[] args) {
        // 創(chuàng)建一個 Date 對象
        Date currentDate = new Date();

        // 獲取 Calendar 實例,并將 Date 對象設置進去
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(currentDate);

        // 獲取 24 小時制的小時數(shù)
        int hour = calendar.get(Calendar.HOUR_OF_DAY);

        if (hour < 12) {
            System.out.println("上午");
        } else {
            System.out.println("下午");
        }
    }
}

代碼解釋

  1. 首先創(chuàng)建了一個 Date 對象 currentDate 表示當前時間。
  2. 接著獲取 Calendar 實例,并使用 setTime 方法將 currentDate 設置進去。
  3. 通過 get(Calendar.HOUR_OF_DAY) 獲取 24 小時制的小時數(shù)。
  4. 根據(jù)小時數(shù)是否小于 12 判斷是上午還是下午。

方式二:使用 java.time 包(Java 8 及以后)

Java 8 引入的 java.time 包提供了更簡潔和強大的日期時間處理功能。

可以將 Date 轉(zhuǎn)換為 ZonedDateTime 再進行判斷。

import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.util.Date;

public class DateAmPmCheckWithJavaTime {
    public static void main(String[] args) {
        // 創(chuàng)建一個 Date 對象
        Date currentDate = new Date();

        // 將 Date 轉(zhuǎn)換為 ZonedDateTime
        ZonedDateTime zonedDateTime = currentDate.toInstant().atZone(ZoneId.systemDefault());

        // 獲取 24 小時制的小時數(shù)
        int hour = zonedDateTime.getHour();

        if (hour < 12) {
            System.out.println("上午");
        } else {
            System.out.println("下午");
        }
    }
}

代碼解釋

  1. 創(chuàng)建 Date 對象 currentDate。
  2. 使用 toInstant() 方法將 Date 轉(zhuǎn)換為 Instant,再通過 atZone(ZoneId.systemDefault()) 轉(zhuǎn)換為 ZonedDateTime。
  3. 調(diào)用 getHour() 方法獲取 24 小時制的小時數(shù)。
  4. 根據(jù)小時數(shù)判斷是上午還是下午。

方式三:使用 SimpleDateFormat 格式化輸出判斷

可以使用 SimpleDateFormatDate 格式化為包含上午/下午標識的字符串,然后進行判斷。

import java.text.SimpleDateFormat;
import java.util.Date;

public class DateAmPmCheckWithFormat {
    public static void main(String[] args) {
        // 創(chuàng)建一個 Date 對象
        Date currentDate = new Date();

        // 定義日期格式,使用 "a" 表示上午/下午標識
        SimpleDateFormat sdf = new SimpleDateFormat("a");

        // 格式化日期
        String amPm = sdf.format(currentDate);

        if ("上午".equals(amPm)) {
            System.out.println("上午");
        } else {
            System.out.println("下午");
        }
    }
}

代碼解釋

  1. 創(chuàng)建 Date 對象 currentDate。
  2. 創(chuàng)建 SimpleDateFormat 對象,指定格式為 "a",它會輸出 上午下午。
  3. 使用 format 方法將 Date 格式化為字符串。
  4. 通過比較字符串判斷是上午還是下午。這種方式的語言顯示受系統(tǒng)默認語言環(huán)境影響。

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringCloud中的服務接口(api)

    SpringCloud中的服務接口(api)

    這篇文章主要介紹了SpringCloud中的服務接口(api),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • SpringBoot使用CommandLineRunner接口完成資源初始化方式

    SpringBoot使用CommandLineRunner接口完成資源初始化方式

    這篇文章主要介紹了SpringBoot使用CommandLineRunner接口完成資源初始化方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 詳細介紹高性能Java緩存庫Caffeine

    詳細介紹高性能Java緩存庫Caffeine

    本篇文章主要介紹了詳細介紹高性能Java緩存庫Caffeine,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • Java 生成帶Logo和文字的二維碼

    Java 生成帶Logo和文字的二維碼

    這篇文章主要介紹了Java 生成帶Logo和文字的二維碼的方法,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下
    2021-04-04
  • Java并發(fā)Futures和Callables類實例詳解

    Java并發(fā)Futures和Callables類實例詳解

    Callable對象返回Future對象,該對象提供監(jiān)視線程執(zhí)行的任務進度的方法, Future對象可用于檢查Callable的狀態(tài),然后線程完成后從Callable中檢索結(jié)果,這篇文章給大家介紹Java并發(fā)Futures和Callables類的相關(guān)知識,感興趣的朋友一起看看吧
    2024-05-05
  • Java修改圖片大小尺寸的簡單實現(xiàn)

    Java修改圖片大小尺寸的簡單實現(xiàn)

    這篇文章主要介紹了Java修改圖片大小尺寸的簡單實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 淺談SpringBoot處理url中的參數(shù)的注解

    淺談SpringBoot處理url中的參數(shù)的注解

    下面小編就為大家分享一篇淺談SpringBoot處理url中的參數(shù)的注解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • 解決spring-boot使用logback的大坑

    解決spring-boot使用logback的大坑

    這篇文章主要介紹了解決spring-boot使用logback的大坑,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • java的Jackson將json字符串轉(zhuǎn)換成泛型List

    java的Jackson將json字符串轉(zhuǎn)換成泛型List

    這篇文章主要介紹了java的Jackson將json字符串轉(zhuǎn)換成泛型List ,這里整理了詳細的代碼,有需要的小伙伴可以參考下。
    2017-02-02
  • 基于Java實現(xiàn)抽獎系統(tǒng)

    基于Java實現(xiàn)抽獎系統(tǒng)

    這篇文章主要為大家詳細介紹了基于Java實現(xiàn)抽獎系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01

最新評論