读书人

一个关于系统时间显示的有关问题希望

发布时间: 2011-12-08 21:33:54 作者: rapoo

一个关于系统时间显示的问题,希望大虾们不吝赐教!
代码如下:

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吧。

读书人网 >J2SE开发

热点推荐