本文主要是介绍Java编程琐事(1)——日期的处理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、Java处理日期的类:
1. java.util.Date:包装了一个long类型数据,表示与GMT(格林尼治标准时间:1970年1月1日00:00:00)这一刻相距的毫秒数。
2. java.text.DateFormat:对日期进行格式化。
3. java.util.Calendar:可以灵活地设置或读取日期中的年、月、日、时、分和秒等信息。
二、Date类介绍:
1. Date类的默认构造方法调用System.currentTimeMillis()方法获取当前时间,即new Date()语句等价于:new Date(System.currentTimeMillis())。
2. 举例说明:
Date date = new Date(System.currentTimeMillis());
System.out.println(date);
System.out.println(date.getTime());
System.out.println(System.currentTimeMillis());
Result:
Wed May 13 11:04:05 CST 2009
1242183845234
1242183845343
三、DateFormat类介绍:
1. java.text.DateFormat抽象类用于定制日期的格式,它有一个具体子类为java.text.SimplDateFormat。
2. 举例说明:
Date date = new Date();
SimpleDateFormat formater = new SimpleDateFormat("yyyy-MM-dd-EEEE");
System.out.println(formater.format(date));
formater = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");
System.out.println(formater.format(date));
Result:
2009-05-13-星期三
2009/05/13 11:11:00
3. DateFormat类的parse(String text,String format)方法按照特定的格式把字符串解析为日期对象。
4. 举例说明:
Date date = parseDate("2009/03/15", "yyyy/MM/dd");
System.out.println(date);
Result: Sun Mar 15 00:00:00 CST 2009
5. DateFormat有一个静态方法:getDateTimeInstance(int dateStyle, int timeStyle)。该方法能返回表示标准格式的DateFormat对象,参数dataStyle设定日期风格,参数timeStyle设定时间风格,这两个参数的可选值都包括:DateFormat.SHORT、DateFormat.MEDIUM、DateFormat.LONG和DateFormat.FULL。
6. 举例说明:
Date date = new Date();
DateFormat mediumDateFormat = DateFormat.getDateInstance(DateFormat.MEDIUM);
String d = mediumDateFormat.format(date);
System.out.println(d.equals(date));
System.out.println(d);
System.out.println(date);
Result:
false
2009-5-13
Wed May 13 11:44:39 CST 2009
四、Calendar类介绍:
1. java.util.Calendar类的set()和get()方法可用来设置和读取日期的特定部分,比如年、月、日、时、分和秒等。Calendar类是抽象类,不能实例化,它有一个具体的子类,即java.util.GregorianCalendar。GregorianCalendar采用格林尼治标准时间。
2. 举例说明:
GregorianCalendar cal = new GregorianCalendar();
System.out.println(new SimpleDateFormat("yyyy-MM-dd EEEE").format(cal.getTime()));
cal.clear();
cal.set(Calendar.YEAR, 2008);
cal.set(Calendar.MONTH, Calendar.AUGUST);
cal.set(Calendar.DAY_OF_MONTH, 22);
System.out.println(new SimpleDateFormat("yyyy-MM-dd EEEE").format(cal.getTime()));
Result:
2009-05-13 星期三
2008-08-22 星期五
这篇关于Java编程琐事(1)——日期的处理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!