介绍如何获取Java日期,以及Java日期运算。
前期准备工作(包括相关工具或所使用的原料等)
Eclipse
详细的操作方法或具体步骤
获取当前日期:
java.util.Date date=new java.util.Date();
这个是util包下在Date,不是sql包下的,不要引用错误。
不能直接输出这个date,要将它格式化之后再输出就符合我们的审美观了。
格式化方法:
java.text.SimpleDateFormat formatter=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
括号中的格式是自己定义的,还可以是其他格式如:“yyyy年MM月dd日”,“yyyy/MM/dd”可以根据自己的实际情况进行定义。
使用Calendar获取当前日期:
Calendar cal=Calendar.getInstance();
System.out.println("Current Date: " + cal.getTime());
这样输出的结果:Current Date: Tue Jun 10 10:31:44 CST 2014

使用TimeStamp获取当前日期:
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Timestamp now=new Timestamp(System.currentTimeMillis());
String sf=sdf.format(now);
System.out.println(sf);
输出结果:
2014-06-10
当前日:
int day=cal.get(Calendar.DATE);
当前月:(注:月份是从0开始的) int month=cal.get(Calendar.MONTH) + 1;
当前年: int year=cal.get(Calendar.YEAR);
本周的第几天:(在国外周日是一周的第一天) int dow=cal.get(Calendar.DAY_OF_WEEK);
本月的第几天: int dom=cal.get(Calendar.DAY_OF_MONTH);
本年的第几天: int doy=cal.get(Calendar.DAY_OF_YEAR);
System.out.println("Day: " + day);输出结果:Day:10
System.out.println("Month: " + month);输出结果:Month:6
System.out.println("Year: " + year);输出结果:Year:2014
System.out.println("Day of Week: " + dow);输出结果:Day of Week:3(今天星期二)
System.out.println("Day of Month: " + dom);输出结果:Day of Month:10
System.out.println("Day of Year: " + doy);输出结果:Day of Year:161

将指定格式的字符串转换为日期:
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");Date sd=sdf.parse("2013-12-25");
Java日期运算
两个日期之差:
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date d1=sdf.parse("2013-12-25");
Date d2=sdf.parse("2013-12-29");
long result=(d2.getTime()-d1.getTime())/(24*60*60*1000);
System.out.println(result);
输出结果:4
在指定日期上加上多少天:
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date sd=sdf.parse("2013-12-23");
Calendar cal1=new GregorianCalendar();
cal1.setTime(sd);
cal1.add(Calendar.DATE, 161);
System.out.println(sdf.format(cal1.getTime()));

Calendar cal=Calendar.getInstance();
在当前日期加上几天:
cal.add(Calendar.DATE, 161);
在当前日期减去几天:
cal.add(Calendar.DATE, -161);
在当前日期加上几个月:
cal.add(Calendar.MONTH,2);
------------------------------------
void java.util.Calendar.add(int field, int amount)
只要更改field即可。
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。作者声明:本教程系本人依照真实经历原创,未经许可,谢绝转载。- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
