一个关于系统时间显示的问题,希望大虾们不吝赐教!
代码如下:
import java.io.*;
import java.util.Calendar;
public class time
{
public static void main(String args[])
{
ShowTime t=new ShowTime();
System.out.println( "当前日期: "+t.getDate());
System.out.println( "当前时间: "+t.getTime());
}
}
class ShowTime
{
ShowTime()
{
t=Calendar.getInstance();
y=t.get(t.YEAR);
m=t.get(t.MONTH)+1;
d=t.get(t.DATE);
hh=t.get(t.HOUR);
mm=t.get(t.MINUTE);
ss=t.get(t.SECOND);
}
public String getDate()
{
return y+ "年 "+m+ "月 "+d+ "日 ";
}
public String getTime()
{
return hh+ "小时 "+mm+ "分 "+ss+ "秒 ";
}
private Calendar t;
private int y,m,d,hh,mm,ss;
}
问题:为什么显示的时间和我的电脑时间不一样啊?谢谢大家,小弟是菜鸟,见笑了!
------解决方案--------------------t=Calendar.getInstance();
显示的是执行这句代码的时间,不是你调用你的对象方法的时间,碰到过这个问题,是会不一致,你先getInstance,然后sleep几秒钟再打印时间就会发现这个问题了
------解决方案--------------------小时设置的不对,应该是:
hh=t.get(Calendar.HOUR_OF_DAY);
Calendar.HOUR 指分上午下午的12小时制
Calendar.HOUR_OF_DAY 指24小时制
看你的时间,你应该是晚上测试,上午试的话会是一样的。
多看看JAVA API吧。