Date类:
输出当前日期:
Calendar类:
Calendar是日历类,也是java.util包下的,功能比较强大,能获取到年月日时分秒的具体值;
package com.ysu.log4j;
import java.util.Date;
import java.util.Calendar;
public class Test {
public static void main(String[] args) {
Date date=new Date();
System.out.println("当前日期:"+date);
Calendar cal=Calendar.getInstance();
System.out.println((cal.get(Calendar.YEAR))+"年");
System.out.println((cal.get(Calendar.MONTH)+1)+"月"); //月份从0开始计算的要+1
System.out.println(cal.get(Calendar.DAY_OF_MONTH)+"日");
System.out.println(cal.get(Calendar.HOUR_OF_DAY)+"时"
+cal.get(Calendar.MINUTE)+"分"
+cal.get(Calendar.SECOND)+"秒");
}
}
运行结果:
当前日期:Mon Dec 10 10:31:06 CST 2018
2018年
12月
10日
10时31分6秒
SimpleDateFormat类:
把日期对象和日期字符串相互转换。
SimpleDateFormat类主要是用作日期类型转换用的,在java.text包下:
package com.ysu.log4j;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test {
/**
* 将日期转换为指定格式的字符串
* @param date
* @param format
* @return
*/
public static String formatDate(Date date,String format) {
SimpleDateFormat sdf=new SimpleDateFormat(format);
String result="";
if(date!=null) {
result=sdf.format(date);
}
return result;
}
/**
* 将一定格式的字符串转换为日期
* @param format
* @param date
* @return
* @throws ParseException
*/
public static Date formatDate(String dateStr,String format) throws ParseException {
SimpleDateFormat sdf=new SimpleDateFormat(format);
return sdf.parse(dateStr);
}
public static void main(String[] args) throws Exception {
Date date=new Date();
System.out.println(formatDate(date,"yyyy-MM-dd"));
System.out.println(formatDate(date,"yyyy-MM-dd hh:mm:ss"));
System.out.println(formatDate(date,"yyyy年MM月dd日 hh时mm分ss秒"));
Date date2=formatDate("2018-12-10 10:34:32","yyyy-MM-dd hh:mm:ss");
System.out.println(formatDate(date2,"yyyy年MM月dd日 hh时mm分ss秒"));
}
}
运行结果:
2018-12-10
2018-12-10 02:24:47
2018年12月10日 02时24分47秒
2018年12月10日 10时34分32秒