Java中关于日期操作具体介绍
程序员文章站
2022-05-24 19:42:03
...
介绍如何获取Java日期,以及Java日期运算。
1.获取当前日期:
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”可以根据自己的实际情况进行定义。
2.使用Calendar获取当前日期:
Calendar cal = Calendar.getInstance(); System.out.println("Current Date: " + cal.getTime());
这样输出的结果:
Current Date: Tue Jun 10 10:31:44 CST 2014
3. 使用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
4.当前日:
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
5. 将指定格式的字符串转换为日期:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date sd = sdf.parse("2013-12-25");
Java日期运算
1.两个日期之差:
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
2.在指定日期上加上多少天:
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()));
3.
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即可。
以上就是Java中关于日期操作具体介绍的详细内容,更多请关注其它相关文章!