Java-日期类
需求:定义一个类,使用一个字段来表示年龄.
public class Employee{
private java.util.Date bornDate;
private java.util.Date hireDate//入职时间
}
在系统中存储的是员工的基本的信息,包括了员工的年龄,此时使用Integer/int类型来表示年龄是不合理的,难道每年都得修改系统中员工的年龄递增1.
需求:如何计算一个员工的工龄.
------------------------------------------------------------->怎么来表示时间/日期类型.
日期相关类:
Date类: java.util.Date类,不是java.sql.Date. 类 Date 表示特定的瞬间,精确到毫秒.
DateFormat/SimpleDateFormat类:
Calendar类:
Java8中重新为日期定义了新的API.
-------------------------------------------------------------
Date类中的大量方法都已经过时了,过时不代表不存在,依然可以使用,只不过不建议使用,官方建议我们使用Calendar类.
日期格式化操作:
------------------------------------------------------------------------------
DateFormat:可以完成日期的格式化操作.
格式化(format): Date类型对象------->String类型: String format(Date date)
解析(parse): String类型时间------>Date类型 : Date parse(String source)
--------------------------------------------------------------------------------
DateFormar转换的格式是固定的,我想根据自己的风格来做转换.
自定义格式,比如:2016-04-16 15:50:48
比如:2016/04/16 15:50:48
SimpleDateFormat类:是DateFormat的子类,支持自定义格式模式.
--------------------------------------------------------------------------------
public static void main(String[] args) throws ParseException{ //自定义日期的模式 String pattern = "yyyy-MM-dd HH:mm:ss E"; //pattern = "yyyy/MM/dd"; SimpleDateFormat sdf = new SimpleDateFormat(); sdf.applyPattern(pattern);//申请使用哪一种时间模式 //格式化 String time = sdf.format(new java.util.Date()); System.out.println(time); //解析使用什么风格格式化的,必须使用相同风格解析回去 java.util.Date d = sdf.parse(time); System.out.println(d); }
日历类(Calendar):是抽象类,表示日历,比Date更强大.
创建日历对象:
Calendar c = Calendar.getInstance();
int get(int field) 返回给定日历字段(年,月,日,时,分,秒)的值。
日期操作练习(日期转换方法):String和Date之间的相互转换.
日历操作练习(计算起止时间):
需求:查询最近一周.......的信息,如何表示最近这一周.
beginTime:
endTime: 当前系统时间的晚上凌晨之前.
共有 0 条评论