编写一个显示当前时间的程序,该时间的格式为小时:分钟:秒,例如:1:45:19。
Systerm类中的方法currentTimeMillis返回从GMT1970年1月1日午夜到当前时刻的毫秒数。(1970年是正式发布Unix操作系统的那一年。) 你可以利用这个方法来获取当前时间,然后如下所示计算当前秒数、分钟数和小时数:
注意:GMT比中国时间早8小时。
package homeWork;
import java.text.DecimalFormat;
public class CurrentTime {
public static void main(String[] args) {
//获取从1970年1月1日到现在的ms值
long currentTime_ms =System.currentTimeMillis()+8*60*60*1000;
//获取从1970年1月1日到2023年9月13日的ms值
long elapsedTime_ms = 19613*24*60*60*1000L;
//让currentTime_ms - elapsedTime_ms得到2023年9月13日0:00到此刻的ms值
long toDay_ms = currentTime_ms - elapsedTime_ms;
//转化为h
double toDay_h = (double)toDay_ms /3600000;
//对toDay_h取整得到此刻的h值
if(toDay_h>=24) toDay_h%=24;
int h = (int)toDay_h;
//得到此刻的min值
double min_all = (toDay_h - h)*60;
int min = (int)min_all;
DecimalFormat df =new DecimalFormat("00");
//得到此刻的s值
double s_all = (min_all - min)*60;
int s = (int)s_all;
//输出此刻时间
System.out.println(h+":"+df.format(min)+":"+df.format(s));
}
}
仅是日常小练习,如有错误欢迎指正,谢谢您的观看