import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class Date_class {
public static void main(String[] args) {
dateMethod();
System.out.println("------------------------------------------------");
calendarMethod();
System.out.println("-------------------------------------------------------");
//下面为针对Calendar的练习
getErYue("2013");//获取任意年的二月的天数
System.out.println("-------------------------------------------------------");
getYesterdary();//获取昨天的现在时刻
}
public static void dateMethod(){
Date d=new Date();
System.out.println("直接打印date类:"+d);
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss 今天是E");
System.out.println(sdf.format(d));
SimpleDateFormat sdf1=new SimpleDateFormat("yyyy");
System.out.println("单独拿到年:"+sdf1.format(d));
}
public static void calendarMethod(){
String[] week={"星期日","星期一","星期二","星期三","星期四","星期五","星期六",};//因为从1开始取,这里可以两种方法:(1),在星期日前再加一个字符串;(2),在拿到值时-1
String[] month={"一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",};//怎么操作你懂 的
Calendar c=Calendar.getInstance();
c.set(2020,0,20);//可以设定日期---------------------设定日期为2020年1月20日
c.add(Calendar.YEAR,2);//增加两年
c.add(Calendar.MONTH,-3);//减去三个月
System.out.println("打印Calendar类:"+c);
System.out.println(c.get(Calendar.YEAR)+"年");
System.out.println((c.get(Calendar.MONDAY)+1)+"月");//注意月数要加1,如果要大写的月或者星期,可以把相应的月或星期放到字符串数组中
System.out.println(c.get(Calendar.DAY_OF_MONTH)+"日");
System.out.println(c.get(Calendar.DAY_OF_WEEK));//星期的排列为 1,2,3,4,5,6,7
//对应的是星期 日 一 二 三 四 五 六
System.out.println(c.get(Calendar.HOUR)+"时");
System.out.println(c.get(Calendar.MINUTE)+"分");
System.out.println(c.get(Calendar.SECOND)+"秒");
}
//应用一:获取任意年的二月多少天
public static void getErYue(String year){
Calendar c=Calendar.getInstance();
c.set(Integer.parseInt(year),2,1);//把日期设定为任意年的3月1日
c.add(Calendar.DAY_OF_MONTH,-1);//求3月1日前一天的日期,就能获取到该年的2月有多少天了!!!!!!!!!!!!
System.out.println(c.get(Calendar.DAY_OF_MONTH));
}
//应用二:获取昨天的现在时刻
public static void getYesterdary(){
Calendar c=Calendar.getInstance();
c.add(Calendar.DAY_OF_MONTH,-1);//设定为昨天
System.out.println(c.get(Calendar.YEAR)+"年");
System.out.println((c.get(Calendar.MONDAY)+1)+"月");//注意月数要加1,如果要大写的月或者星期,可以把相应的月或星期放到字符串数组中
System.out.println(c.get(Calendar.DAY_OF_MONTH)+"日");
System.out.println(c.get(Calendar.DAY_OF_WEEK));//星期的排列为 1,2,3,4,5,6,7
//对应的是星期 日 一 二 三 四 五 六
System.out.println(c.get(Calendar.HOUR)+"时");
System.out.println(c.get(Calendar.MINUTE)+"分");
System.out.println(c.get(Calendar.SECOND)+"秒");
}
}