java之时间处理类:Date,Calendarh和SimpleDateFormat
Date类
1、创建一个当前时间的Date对象
//创建一个代表系统当前日期的Date对象
Date d = new Date();
2、创建一个我们指定的时间的Date对象:
使用带参数的构造方法Date(int year, int month, int day) ,可以构造指定日期的Date类对象,Date类中年份的参数应该是实际需要代表的年份减去1900,实际需要代表的月份减去1以后的值。
//创建一个代表2014年6月12号的Date对象
Date d1 = new Date(2014-1900, 6-1, 12); (注意参数的设置)
3、正确获得一个date对象所包含的信息,如:
Date d2 = new Date(2014-1900, 6-1, 12);
//获得年份 (注意年份要加上1900,这样才是日期对象d2所代表的年份)
int year = d2.getYear() + 1900; //2014
//获得月份 (注意月份要加1,这样才是日期对象d2所代表的月份)
int month = d2.getMonth() + 1; //6
//获得日期
int date = d2.getDate(); //12
//获得小时
int hour = d2.getHours();//不设置默认为0
//获得分钟
int minute = d2.getMinutes(); //0
//获得秒
int second = d2.getSeconds(); //0
//获得星期
int day = d2.getDay(); //0
Calendar类
1.Calendar类的功能要比Date类强大很多,考虑了时区等问题。
2.Calendar类是一个抽象类,提供了getInstance方法用来创建对象。
使用方法:
//1.创建一个代表系统当前日期的Calendar对象
Calendar c = Calendar.getInstance();//默认是当前日期
//2.创建一个指定日期的Calendar对象
Calendar c1 = Calendar.getInstance();
c1.set(2014, 5 - 1, 9);
//3.创建一个指定日期的Calendar对象--方式二
c1.set(Calendar.DATE,10);
c1.set(Calendar.YEAR,2015);
//4.获取时间
// 获得年份
int year = c1.get(Calendar.YEAR);
// 获得月份
int month = c1.get(Calendar.MONTH) + 1;(MONTH+1)
// 获得日期
int date = c1.get(Calendar.DATE);
// 获得小时
int hour = c1.get(Calendar.HOUR_OF_DAY);
// 获得分钟
int minute = c1.get(Calendar.MINUTE);
// 获得秒
int second = c1.get(Calendar.SECOND);
// 获得星期几
int day = c1.get(Calendar.DAY_OF_WEEK);
//5.和Date关联
setTime(new Date())
SimpleDateFormat 日期格式化类
/* SimpleDateFormat 日期格式化 */
SimpleDateFormat f=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String format = f.format(new Date(400000));/*日期转字符串*/
Date parse = f.parse(format);/* 字符串转日期 */