一、Date 和SimpleDateFormat
Date是一个时间控件,主要获取当前时间 date里面的方法就不一一讲解了。
但其实这个获取到的当前时间展示不是日常所看到的一样,这个时候就会用到了SimpleDateFormat,这个类可以让date日期的时间进行格式化,比如
就会获取到当前的年月日,simpleDateFormat的格式是yyyy-MM-dd HH:mm:ss 对应的是年月日 时分秒 年月日和时间秒中间必须要有空格。
date.getime();获取从1970年1月1日到现在的毫秒值
还有一种不用date而把当前日期格式化的方法 就是Calendar Calendar是一个抽象类
二、 Calendar 和SimpleDateFormat
这样也可以得出来当前的日期
说到时间的计算,主要讲的就是Calendar 因为Calendar比date类的运用更广泛可以说是专门为日期增加做的一个抽象类他可以单独的获取当前的年、月、日、时、分、秒、当前周的周几
Calendar cal = Calendar.getInstance();
//获取小时HOUR_OF_DAY24小时制 HOUR12小时制
cal.add(Calendar.HOUR_OF_DAY,20);
cal.add(Calendar.MINUTE,60);
int year = cal.get(Calendar.YEAR);//获取年份
int month=cal.get(Calendar.MONTH) + 1;//获取月份 获取的月份需要加1月才是当前正常月
int day=cal.get(Calendar.DATE);//获取日
int hour=cal.get(Calendar.HOUR);//小时
int hour1=cal.get(Calendar.HOUR_OF_DAY);//小时
int minute=cal.get(Calendar.MINUTE);//分
int second=cal.get(Calendar.SECOND);//秒
int WeekOfYear = cal.get(Calendar.DAY_OF_WEEK)-1;//一周的第几天 一周要减一,因为它是按照周日、一来算的天数
cal.add(Calendar.HOUR_OF_DAY,1);加一个小时 cal.add(Calendar.DATE,1);加一天
cal.add(Calendar.MONTH,1);加一个月 cal.add(Calendar.YEAR,1);加一个年
这个可以根据当前的需要来计算时间
三、Date Calendar SimpleDateFormat三种类型的转换
Calendar 转Date
Calendar calendar = Calendar.getInstance();
java.util.Date date =calendar.getTime();
Date转Calendar
Calendar calendar = Calendar.getInstance();
calendar.setTime(new java.util.Date());
Date转SimpleDateFormat
SimpleDateFormat format = new SimpleDateFormat("yyyy");
format.format(new java.util.Date());
SimpleDateFormat 转Date
String str = "1970";
SimpleDateFormat format = new SimpleDateFormat("yyyy");
Date date= format.parse(str);
SimpleDateFormat 转 Calendar