*3.30(当前时间)修改编程练习题2.8,以12小时时钟制显示小时数

  • 题目
    • 题目概述
    • 运行示例
    • 编程练习题2.8
    • 破题
  • 代码

题目

题目概述

*3.30(当前时间)修改编程练习题2.8,以12小时时钟制显示小时数

运行示例

Enter the time zone offset to GMT: -5
The current time is 4:50:34 AM

编程练习题2.8

欢迎点击这里前往我的2.8博文,或复制url到浏览器:

https://blog.csdn.net/weixin_46356698/article/details/119783225

import java.util.Scanner;public class Test2_8 {public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.println("Enter the time zone offset to GMT:");int offset = input.nextInt();// Obtain the total milliseconds since midnight, Jan 1, 1970long totalMilliseconds = System.currentTimeMillis();// Obtain the total seconds since midnight, Jan 1, 1970long totalSeconds = totalMilliseconds / 1000;totalSeconds += offset * 60 * 60;// Compute the current second in the minute in the hourlong currentSecond = totalSeconds % 60;// Obtain the total minuteslong totalMinutes = totalSeconds / 60;// Compute the current minute in the hourlong currentMinute = totalMinutes % 60;// Obtain the total hourslong totalHours = totalMinutes / 60;// Compute the current hourlong currentHour = totalHours % 24;// Display resultsSystem.out.println("Current time is " + currentHour + ":"+ currentMinute + ":" + currentSecond + " GMT");}
}

破题

在理解2.8题目的基础上只需要更改一小部分即可
我的理解,是在最后输出前增加对小时的变换
对12求余即可获取3.30要求的小时数
原数除12如果为0后面跟AM,如果为1后面跟PM

代码

import java.util.Scanner;public class Test2_8 {public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.println("Enter the time zone offset to GMT:");int offset = input.nextInt();// Obtain the total milliseconds since midnight, Jan 1, 1970long totalMilliseconds = System.currentTimeMillis();// Obtain the total seconds since midnight, Jan 1, 1970long totalSeconds = totalMilliseconds / 1000;totalSeconds += offset * 60 * 60;// Compute the current second in the minute in the hourlong currentSecond = totalSeconds % 60;// Obtain the total minuteslong totalMinutes = totalSeconds / 60;// Compute the current minute in the hourlong currentMinute = totalMinutes % 60;// Obtain the total hourslong totalHours = totalMinutes / 60;// Compute the current hourlong currentHour = totalHours % 24;long currentHour_12 = currentHour % 12;// Display resultsif(currentHour / 12 == 0)System.out.println("Current time is " + currentHour_12 + ":"+ currentMinute + ":" + currentSecond + " AM");elseSystem.out.println("Current time is " + currentHour_12 + ":"+ currentMinute + ":" + currentSecond + " PM");}
}

Java黑皮书课后题第3章:*3.30(当前时间)修改编程练习题2.8,以12小时时钟制显示小时数相关推荐

  1. Java黑皮书课后题第7章:*7.20(修改选择排序法)在7.11节中,使用了选择排序法对数组排序。改写7.11节程序,重复地在当前数组中找到最大值,然后将这个最大值与该数组中的最后一个数进行交换

    7.20(修改选择排序法)在7.11节中,使用了选择排序法对数组排序.改写7.11节程序,重复地在当前数组中找到最大值,然后将这个最大值与该数组中的最后一个数进行交换 题目 题目描述 破题 代码 运行 ...

  2. Java黑皮书课后题第7章:*7.6(修改程序清单5-15)程序清单5-15通过检验2、3、4…n/2是否是数n的因子来判断n是否为素数。判断n是否素数的更高效的方法是检验小于等于根n的素数是否有n整

    *7.6(修改程序清单5-15)程序清单5-15通过检验2.3.4-n/2是否是数n的因子来判断n是否为素数.判断n是否素数的更高效的方法改写5-15 题目 题目描述 破题 程序清单5-15(非本题代 ...

  3. Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类)设计一个名为Person的类及其两个名为Student和Employee的子类

    Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类) 题目 缺陷 UML图 代码 Test02_MyDate.java:用于参考的My ...

  4. Java黑皮书课后题第10章:**10.25(新的字符串split方法)String类中的split方法会返回一个字符串数组,该数组是由分隔符分隔开的子串构成的

    Java黑皮书课后题第10章:**10.25(新的字符串split方法) 题目 代码 运行实例 题目 代码 public class Test25 {public static String[] sp ...

  5. Java黑皮书课后题第10章:10.21(被5或6整除)找出能被5或6整除的大于Long.MAX_VALUE的前10个数字

    Java黑皮书课后题第10章:10.21(被5或6整除)找出能被5或6整除的大于Long.MAX_VALUE的前10个数字 题目 代码 结果 题目 都在上面 代码 import java.math.B ...

  6. Java黑皮书课后题第10章:*10.13(几何:MyRectangle2D类)定义MyRectangle2D类

    Java黑皮书课后题第10章:10.3 题目 程序 代码 Test13.java Test13_MyRectangle2D.java 运行 UML 题目 程序 Test13.java:测试程序 Tes ...

  7. Java黑皮书课后题第10章:10.2(BMI类)将下面的新构造方法加入BMI类中

    Java黑皮书课后题第10章:10.2(BMI类)将下面的新构造方法加入BMI类中 题目 程序说明 题目槽点 代码:Test2_BMI.java 运行实例 题目 程序说明 Test2_BMI.java ...

  8. Java黑皮书课后题第10章:*10.1(Time类)设计一个名为Time的类。编写一个测试程序,创建两个Time对象(使用new Time()和new Time(555550000))

    Java黑皮书课后题第10章:*10.1设计一个名为Time的类.编写一个测试程序,创建两个Time对象 题目 程序 代码 Test1.java Test1_Time.java 运行结果 UML 题目 ...

  9. Java黑皮书课后题第9章:**9.13(Location类)设计一个名为Location的类,定位二维数组中的最大值及其位置。

    Java黑皮书课后题第9章:**9.13(Location类)设计一个名为Location的类,定位二维数组中的最大值及其位置 题目 破题 代码 Test13 Test13_Location 运行结果 ...

最新文章

  1. vue 加载体验优化
  2. Apache的安装与下载
  3. echarts 自适应高度_web 报表工具如何自适应
  4. w7怎么查看电脑配置_学室内设计,对电脑配置有何要求?不懂戳这!
  5. 如此火爆的ZooKeeper,到底如何选主?
  6. 4.3 欠拟合与过拟合
  7. [转载]Mac使用vim命令修改配置文件内容
  8. PWN-PRACTICE-BUUCTF-2
  9. HDU 3555: Bomb
  10. 格式化 SQL 来提高效率
  11. 2019最新蚂蚁金服Java 4面真题
  12. bootstrap插件bootbox参数
  13. 设置背景颜色html,css怎么设置背景颜色?
  14. Alios-Things之wifi模块二次开发-(1)搭建Alios-Things开发环境(基于ubuntu 16.0.4)
  15. RabbitMQ由浅入深入门全总结(一)
  16. GmSSL快速上手指南
  17. 安卓开发招聘!免费Android高级工程师学习资源,2年以上经验必看
  18. PN532半加密、无漏洞卡解密
  19. LINUX学记笔记17
  20. 杭电2030-2039题解

热门文章

  1. python股票接口_使用SINA接口获取实时股票信息
  2. delphi报列表索引越界怎么处理_Python入门第3课:列表元组,看这一篇够了 | 原创...
  3. iphone以旧换新活动_【武商襄阳购物中心】 参与iphone以旧换新活动,最高可抵4300元,旧机可享10%额外补贴...
  4. 笔记本电脑没有鼠标怎么拖动_适合办公鼠标要如何选择?除了便携更需要这些...
  5. 云开发系列课程让你从入门到精通快速上手Serverless和云开发技术
  6. 2021阿里巴巴研发效能峰会来啦!
  7. 内容流量管理的关键技术:多任务保量优化算法实践
  8. AI小编问世!阿里智能写手核心技术首次公开!
  9. 计算机网络实验报告4icmp,实验04-ip、icmp协议分析
  10. 来自Riot 的一份游戏美术教程(三):角色设计