一个描述12小时制时间的字符串。所有的输入都是合理的,不用考虑输入不合理的情况。
一个描述24小时制时间的字符串。
08:03:45PM
20:03:45
/* 思路:十二小时制:AM中从0-11都是二十四小时制一样 12AM改成00:00:00 十二小时制的PM则需要开始变化,把每个时辰都加上12(时位) */ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String[] str = br.readLine().split(":"); //分情况讨论 //①AM且小于12:00:00 int hour = Integer.parseInt(str[0]); char ch = str[2].charAt(2); if(hour<12 && ch == 'A'){ System.out.println(str[0] + ":" + str[1] + ":" + str[2].substring(0,2)); }else if(hour == 12 && ch == 'A'){ System.out.println("00" + ":" + str[1] + ":" + str[2].substring(0,2)); }else if(hour <12 && ch == 'P'){ hour = hour+12; System.out.println(String.valueOf(hour) + ":" + str[1] + ":" + str[2].substring(0,2)); }else if(hour == 12 && ch == 'P'){ System.out.println("12" + ":" + str[1] + ":" + str[2].substring(0,2)); } } }