Java中如何将12小时制时间转换为24小时制?

Java 中 12 小时制时间转换为 24 小时制的方法

本文将介绍如何在 Java 中利用 SimpleDateFormat 类实现 12 小时制时间到 24 小时制的转换。例如,将 "10:30 am" 转换为 24 小时制格式。

以下代码演示了转换过程:

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

public class TimeConverter {
    public static void main(String[] args) throws ParseException {
        SimpleDateFormat twelveHourFormat = new SimpleDateFormat("hh:mm a"); // 12小时制格式
        SimpleDateFormat twentyFourHourFormat = new SimpleDateFormat("HH:mm"); // 24小时制格式

        String twelveHourTime = "10:30 pm";
        Date date = twelveHourFormat.parse(twelveHourTime);
        String twentyFourHourTime = twentyFourHourFormat.format(date);

        System.out.println(twelveHourTime + " = " + twentyFourHourTime);
    }
}

这段代码首先定义了 12 小时制和 24 小时制的日期格式。然后,它解析 12 小时制字符串,将其转换为 Date 对象,最后使用 24 小时制格式将其格式化输出。

运行结果:

10:30 pm = 22:30

这段代码清晰地展示了如何进行 12 小时制到 24 小时制的转换,并处理了潜在的 ParseException 异常。 请注意 hh (小写) 代表 12 小时制小时,而 HH (大写) 代表 24 小时制小时。 a 用于表示上午(am)或下午(pm)。