1. Date类(Java.utilDate)
java
java.util.Date类用于封装日期及时间信息,通常仅用它显示某个日期,不对他做任何操做处理,做处理用Calendar类,计算方便。ide
//建立一个Date实例,默认的构造方法建立的日期表明当前系统时间spa
Date date=new Date();orm
//此类重写了toString()方法,输出的是日期格式对象
System.out.println(date);blog
//查看date内部的毫秒值ip
long time=date.getTime();ci
// 设置毫秒数让一个时间Date表示一天后的当前时间字符串
date.setTime(time+1000*60*60*24);get
2. Calendar类
java.util.Calendar类用于封装日历信息,其主做用在于其方法能够对时间份量进行运算。
1)经过Calendar的静态方法获取一个实例该方法会根据当前系统所在地区来自行决定时区,帮咱们建立Calendar实例,这里要注意,实际上根据不一样的地区,Calendar有若干个子类实现。而Calendar自己是抽象类,不能被实例化!咱们不须要关心建立的具体实例为哪一个子类,咱们只须要根据Calendar规定的方法来使用就能够了。
2)日历类所解决的根本问题是简化日期的计算,要想表示某个日期还应该使用Date类描述。Calendar是能够将其描述的时间转化为Date的,咱们只须要调用其getTime()方法就能够获取描述的日期的Date对象了。
3)经过日历类计算时间:为日历类设置时间,日历类设置时间使用通用方法set。
set(int field,int value),field为时间份量,Calendar提供了相应的常量值,value为对应的值。
4)只有月份从0开始:0为1月,以此类推,11为12月,其余时间是正常的从1开始。也可使用Calendar的常量 calendar.NOVEMBER……等.
5)Calendar.DAY_OF_MONTH 月里边的天---几号;
Calendar.DAY_OF_WEEK 星期里的天---星期几
Calendar.DAY_OF_YEAR 年里的天
Calendar calendar=Calendar.getInstance();// 构造出来表示当前时间的日历类
Date now=calendar.getTime();// 获取日历所描述的日期
calendar.set(Calendar.YEAR, 2012);// 设置日历表示2012年
calendar.set(Calendar.DAY_OF_MONTH,15);// 设置日历表示15号
calendar.add(Calendar.DAY_OF_YEAR, 22);// 想获得22天之后是哪天
calendar.add(Calendar.DAY_OF_YEAR, -5);//5天之前是哪天
calendar.add(Calendar.MONTH, 1); // 获得1个月后是哪天
System.out.println(calendar.getTime());// 获取日历所描述的
6)获取当前日历表示的日期中的某个时间单位可使用get方法.
int year=calendar.get(Calendar.YEAR);
int month=calendar.get(Calendar.MONTH);
int day=calendar.get(Calendar.DAY_OF_MONTH);
System.out.println(year+"年"+(month+1)+"月"+day+"日");//month要处理
案例5:
3. SimpleDateFormat类
java.text.SimpleDateFormat类,日期转换类,该类的做用是能够很方便的在字符串和日期类之间相互转换。
parse方法用于按照特定格式将表示时间的字符串转化成Date对象。
format方法用于将日期数据(对象)按照指定格式转为字符串
//建立一个SimpleDateFormat而且告知它要读取的字符串格式
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
//建立一个日期格式字符串
String dateFormat="2013-05-14";
//将一个字符串转换为相应的Date对象
Date date=sdf.parse(dateFormat);//要先捕获异常
System.out.println(date);//输出这个Date对象
// 定义显示日期的字符串格式
SimpleDateFormat format1=new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");
Date now=new Date(); // 获取当前时间
String nowStr=sdf.format(now);//把对象传进去转出字符串