用Java将12小时制改为24小时制,Java新手

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用Java将12小时制改为24小时制,Java新手相关的知识,希望对你有一定的参考价值。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:dd:mm");

System.out.println(sdf.format(new Date()));

这个是将当前时间的格式改为yyyy-MM-dd HH:dd:mm的,显示的是24小时制。

一、java代码12小时制转换24小时制方法

tr:12小时制字符串,比如8:00am,7:00pm.8:30am,6:00pm

返回值为24小时制字符串:比如18:00,20:00,21:00

ublic static String startStr(String str)

String[] strs = str.split("--")

String total = strs[strs.length - 1]

String startHour = total.substring(0, total.indexOf(":"))

if ((total.charAt(total.indexOf("m") - 1) + "").equals("a")

(startHour.equals("12")))

二、java Date类型:24小时制和12小时制

String getTimestamp()
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss sss");
Date date = new Date();
return df.format(date);

HH返回的是24小时制的时间

hh返回的是12小时制的时间

参考技术A SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:dd:mm");
System.out.println(sdf.format(new Date()));
这个是将当前时间的格式改为yyyy-MM-dd HH:dd:mm的,显示的是24小时制,不知道你说的是不是这个追问

能写一下1完整版的代码吗

追答

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println(sdf.format(new Date()));这个表示12小时制 格式:2015-10-28 08:56:48
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(sdf.format(new Date()));这个表示24小时制 格式:2015-10-28 20:57:35
只要把一个Date格式的时间放入format中就可以转换成String类型,规定格式的日期了
顺便提一下,之前的打错了。。。。

本回答被提问者和网友采纳
参考技术B HH:mm:ss是24进制,hh:mm:ss是12进制

将12小时制改为24小时制

如果不是做项目遇到,我大概永远都不会知道12小时制的上午12点就是夜里零点,囧~(个人习惯24小时制)

首先区分12小时制和24小时制的对应关系,以下按照时间顺序列出了几个关键的时间点:

12小时制 24小时制
上午12:00 0:00
上午12:30 0:30
上午1:00 1:00
…… ……
上午11:59 11:59
下午12:00 12:00
下午12:59 12:59
下午1:00 13:00
…… ……
下午11:59 23:59
上午12:00 0:00

以下代码实现了两种时间之间的转换,直接从自己项目的源代码中截取,所以先解释下各个变量的意义:

result.dateTimeOfDay是12小时制的时间,timeFlag用于记录是上午还是下午:
 1 var timeFlag = result.dateTimeOfDay.substr(0,2);
 2   if(timeFlag == "上午"){
 3     var h= result.dateTimeOfDay.substr(2).split(":")[0];
 4     if(h==12)    h = parseInt(h)-12;
 5     this.dateTimeOfDay = h+ ":" +result.dateTimeOfDay.substr(2).split(":")[1];
 6   }else{
 7     var h= result.dateTimeOfDay.substr(2).split(":")[0];
 8     if(h!=12)    h = parseInt(h)+12;
 9     this.dateTimeOfDay = h+ ":" +result.dateTimeOfDay.substr(2).split(":")[1];
10   }

 记录自己学习的过程,当然也希望能帮助到别人,如有错误欢迎指正。

以上是关于用Java将12小时制改为24小时制,Java新手的主要内容,如果未能解决你的问题,请参考以下文章

将12小时制改为24小时制

怎样将EXCEL里的时间由12小时制转变成24小时制

用java写一个程序把24小时制的时间转换为12小时制的时间.具体说明内详

Java 获取当前时间的小时(24小时制)

Java 获取当前时间的小时(24小时制)

我的电脑的时间是12小时制的,如何改成24小时制的?