public class Demo01 {//Java中Date类和Calendar简介 public static void main(String[] args) {long now=System.currentTimeMillis();System.out.println("now= "+now);Date d1=new Date(now);System.out.println("d1= "+d1);Calendar c1=Calendar.getInstance();System.out.println("c1= "+c1.getTime());}}
2.时间日期的基本操作
import java.text.Format;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;public class Demo02_Date_String_Calendar {public static void main(String[] args) throws ParseException {Date d1=new Date(System.currentTimeMillis());Calendar c1=Calendar.getInstance();//都是获得当前系统时间//格式化SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");System.out.println("格式化前d1="+d1.toString());System.out.println("格式化前d1="+sdf.format(d1));//String和Date转换String date="-11-16";SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd");Date d2=sdf1.parse(date);//使用parse函数将String类型转换成 Date类型//需要创建一个对象接收 转换后对象System.out.println("String转换成Date,d2="+d2);//Date转换成 StringString s1=sdf1.format(d2);System.out.println("Date转换为String类型 ,s1="+s1);}}
import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar;public class Demo03 {public static void main(String[] args) throws ParseException {//设置生日 StringString birthday="-05-30";//将String类型转换成日期SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");Date date=sdf.parse(birthday);//对日期进行计算Date spec=prepareBirthdayDay(date);//将计算结果转换成String类型输出 String s2=sdf.format(spec);// dateto StringSystem.out.println(birthday+"提前2周的周六为: "+s2);}/*** 传入一个日期,计算该日期的2个星期前的 周6的日期* * @param birthdayDate 传入的日期* @return 2周前的周六的日期*/public static Date prepareBirthdayDay(Date birthdayDate){Calendar cal=new GregorianCalendar();//父类声明 创建子类对象cal.setTime(birthdayDate);//接收传入的date日期 转换成Calendarcal.add(Calendar.WEEK_OF_MONTH, -2);//提前2周 每个月的第几周cal.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY);//调整为当前星期的周6return cal.getTime();//Calendar转换成Date }}