Date:主要是用来表达一个特定的时间点。它的每一个实例用于表示一个确切的时间点,内部维护了一个long值,该值记录的是,1970年1月1日 00:00:00 到表示的时间点之间的毫秒值,整数是70年以后的,负数是70年以前的。Date一般不使用。
Date date = new Date(); //使用默认的构造方法表示当前系统时间(Date重写了toString方法,返回的字符串表示当前的系统时间—Wed May 25 09:37:23 CST 2016)
long time =date.getTime(); //获取Date内部维护的long值
date.setTime(time) //此时date表示time所对应的时间点
SimpleDateFormat:根据一个给定的日期格式让它可以string与date之间互转的。
y---年 M---月 d---日 E---星期 H---小时(24小时制) h---小时(12小时)
m---分钟 s—-秒 //yyyy ----2013 yy---13年 MM---01月 M---1月 等等
Date date = new Date(); //当前系统时间 2013-08-23 14:23:45
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
String str =sdf.format(date) //format方法可以将给定的date对象表示的时间按照simpleDateFormat指定的格式转换为字符串。 ------Date --> String
String str =”2008-08-08 20:23:04”
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
Date date =sdf.parse(str); //将给定的字符串按照SimpleDateFormat指定的日期格式解析为一个Date对象
Calendar:日历类,该类是一个抽象类,封装了对时间的相关操作,通常的实现类是阳历
Calendar calender =Calendar.getInstance();//使用Calendar的静态方法创建实例,默认创建的日历实例表示当前系统时间 (可通过转换为date更加直观的显示时间)
Date date= calendar.getTime();//calendar提供了getTime()方法,该方法返回一个Date对象,该对象表示的时间就是当前calendar表示的时间 //Calendar ->Date
void setTime(Date date)//calendar.setTime(date); //Calendar的setTime方法可以使当前Calendar表示给定的date所表示的时间.
void set(int field,int value); //第一个是时间分量,如:年、月、日、分钟等,时间分量可以使用calendar里面的常量。第二个是参数对应的值
calendar.set(calendar.YEAR,2008); //设定年为2008年
calendar.set(Calendar.MONTH,8); //月份从0开始 8—>9月
DAY_OF_MONTH:月中的天,==使用DATE一样
DAY_OF_WEEK:周中的天,星期几。周日为1,周一为2. DAY_OF_YEAR: 年中的天
calendar.set(Calendar.DATE,8); ---9月8号
calendar.set(Calendar.HOUR_OF_DAY,20); calendar.set(Calendar.MINUTE,2); //分
calendar.set(Calendar.SECOND,20); //秒
int get(int field) //获取一个Calendar表示的日期中各个时间分量对应的值
int year = calendar.get(Calendar.YEAR); //获取年
int day=calendar.getActualMaximum(Calendar.DAY_OF_MONTH); //获取一个时间分量的最大值
void add(int field,int value); ----对指定的时间分量加上给定的值,若为负则为减去
calendar.add(Calendar.YEAR,3); //查看3年后 //Calendar.DAY_OF_YEAR //查看n天
对日期进行一系列的操作时候:
1:获取用户输入的日期字符串
2:使用SimpleDateFormat将其转换为Date
3:创建一个Calendar,使其表示Date表示的日期
4:使用Calendar根据需求计算时间
5:将Calendar转换为Date
6:使用SimpleDateFormat将Date换为字符串显示
领取专属 10元无门槛券
私享最新 技术干货