1、获取系统时间小时数加1的工具类:
public class GetHourAddOne {public static String getHour(){Calendar calendarInstance();Date nowTimeTime();//原来小时数://String hh = new SimpleDateFormat("HH").format(nowTime);//System.out.println(hh);calendar.add(Calendar.HOUR, 1); //减填负数nowTimeTime();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 calendarInstance();Date nowTimeTime();//原来小时数://String hh = new SimpleDateFormat("HH").format(nowTime);//System.out.println(hh);calendar.add(Calendar.HOUR, -10); //减填-,但是Linux下不OK,填入-10测试一下nowTimeTime();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小时内删除。
留言与评论(共有 0 条评论) |