java Date Calendar 区别

Calendar now =Calendar.getInstance();//获取系统时间
那么当前的小时是now.get(now.HOUR);靠 那now.HOUR是什么东西,老是显示10 都不知道为什么
顺便希望说下 Date 跟 Calendar 的区别

JAVA中 Date 和 Calendar 区别在于:
Date用于记录某一个含日期的、精确到毫秒的时间。重点在代表一刹那的时间本身。
Calendar用于将某一日期放到历法中的互动——时间和年、月、日、星期、上午、下午、夏令时等这些历法规定互相作用关系和互动。Calendar本身代表公历的一个简化缩水版,姑且叫“计算机历”。完整的公历是格里高利历,Java SE中以GregorianCalendar类来提供相关的历法功能。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-08-01
Calendar是日历

Date是时间
Date用来表示当前时间,通常是用来单纯的记录一个时间,它提供的api也非常少
而Calendar则有非常多的api,
例如,
获取今天是星期几
今天是哪个月,本月有几天,今天是本月的第几个星期
今天是今年的第几天,等等等等,Date是无法完成的!!本回答被网友采纳
第2个回答  推荐于2017-10-12
Calendar中的静态常量类,用10代表HOUR时间,查查帮助文档都有 ,或则反编译下calendar看看里面的定义。
用法写了小例子 ,用来指定固定时间加上3个小时
Calendar.HOUR 参数就是指定是给小时加数字,不是分钟,也不是年月日。 还有静态常量类直接用引用就成了,别实例了。
把下边代码复制到你的main中 运行下看看
----------------

SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String result="";
Date dt;
try
{
dt = format.parse("2008-01-01 12:00:00");
Calendar calendar=Calendar.getInstance();
calendar.setTime(dt);
calendar.add(Calendar.HOUR , 3);
result=format.format(calendar.getTime());
}
catch (ParseException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(result);
-------------------------------------------
区别,首先是两个类,一个是时间类,一个是日历类,前者偏重时间,后者偏重时间计算,这个东西好好看看两个类里面的方法就知道了,说多了没有用本回答被提问者采纳
相似回答