java获取系统时间小时数加1在Centos7与Windows运行结果的差异

阅读: 评论:0

java获取系统时间小时数加1在Centos7与Windows运行结果的差异

java获取系统时间小时数加1在Centos7与Windows运行结果的差异

1、获取系统时间小时数加1的工具类:

	public class GetHourAddOne {public static String getHour(){Calendar calendar&#Instance();Date nowTime&#Time();//原来小时数://String hh = new SimpleDateFormat("HH").format(nowTime);//System.out.println(hh);calendar.add(Calendar.HOUR, 1); //减填负数nowTime&#Time();String hour = new SimpleDateFormat("HH").format(nowTime);return hour;}
}

2、在windows平台和linux平台运行结果的差异:
2.1 在windows平台的运行结果:

由图在windows平台上能正常得到系统时间小时数加1

2.2在linux(centos7)平台上的运行结果

由图知,虽然linux系统时间是0点,但调用时间小时数加1之后得到的是12点,并没有得到我们想要的时间数为1的效果。

3、自己的初步调整策略:
linux系统时间的小时数为0,但是调用小时数加1之后得到的12,并没有得到加1显示为1的结果,说明程序调用的时间是拿系统时间为11去加1得到的结果,而不是拿0+1去得到的结果,为了得到我们想要的在Linux系统时间的小时数为0时显示为1的效果,可以更改获取时间工具类,把原来的加1改为减10就是我们想要的结果了。
3.1 、获取时间工具类的更改:

public class GetHourAddOne {public static String getHour(){Calendar calendar&#Instance();Date nowTime&#Time();//原来小时数://String hh = new SimpleDateFormat("HH").format(nowTime);//System.out.println(hh);calendar.add(Calendar.HOUR, -10); //减填-,但是Linux下不OK,填入-10测试一下nowTime&#Time();String hour = new SimpleDateFormat("HH").format(nowTime);return hour;}
}

3.2 、更改之后实现的效果:

由图知,能实现需要的结果

4、还未解决的疑惑点:
尚未明确为何调用系统时间的小时数加1时,windows与linux的启动初始时间值想差了11。

本文发布于:2024-01-30 20:00:39,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170661604022472.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:差异   小时   时间   系统   java
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23