一、使用常用方法获取系统当前时间并转换格式:
// 获取系统时间内容
public static void GetDate() {
Date date = new Date();
System.out.println(date);// 打印的时间看不懂,希望有固定的格式
// 将模式封装到simpleDateFormat对象中
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日E hh:mm:ss");
// 调用format方法让模式格式化指定date对象
String format = sdf.format(date);
System.out.println(format);
}
二、使用Calender方法获取时间:
public static void GetDateDemo1() {
String arr[] = { "一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月",
"十月", "十一月", "十二月" };
String xinqi[] = { "", "星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
Calendar instance = Calendar.getInstance();
// instance.set(2011,2,23); //设置指定时间 但是记住月设置是要比实际减一 输出:2011年三月23日 星期三
//instance.add(Calendar.YEAR, 1); // 设置时间的加减 可以是年月日
//instance.add(Calendar.MARCH, -1);
//instance.add(Calendar.DAY_OF_MONTH, -1);
int year = instance.get(Calendar.YEAR);// 年
int month = instance.get(Calendar.MONTH);// 月
int day = instance.get(Calendar.DAY_OF_MONTH);// 日
int week = instance.get(Calendar.DAY_OF_WEEK);// 星期
System.out.println(year + "年" + arr[month] + day + "日" + " "
+ xinqi[week]);
}
三、案例一:获取任意年的二月有几天
/**
* 获取任意年的二月有几天 思路: 根据指定年设置时间就是:instance.set(year,2,1); 获取到是3月1日
* 再向前推一天就是二月的最后一天了:instance.add(Calendar.DAY_OF_MONTH,-1);
*/
public static void Demo1(int year) {
Calendar instance = Calendar.getInstance();
instance.set(year, 2, 1);
instance.add(Calendar.DAY_OF_MONTH, -1);
int day = instance.get(Calendar.DAY_OF_MONTH); //获取天
System.out.println(day);
}
四、案例二:获取昨天的现在这个时间:
/*
* 获取昨天的现在这个时间
* 思路:1.获取到当前时间的年月日时分秒:年:instance.get(Calender.YEAR); 月:instance.get(Calender.MONTH); 日:instance.get(Calender.DAY_OF_MONTH);
* 时:instance.get(Calender.);
* 2.设置天向前提前一天:instance.add(Calender.DAY_OF_MONTH,-1);
*/
public static void Demo2(){
String arr[] = { "一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月",
"十月", "十一月", "十二月" };
String xinqi[] = { "", "星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
Calendar instance = Calendar.getInstance();
instance.add(Calendar.DAY_OF_MONTH, -1); //设置天减一
int year = instance.get(Calendar.YEAR); //年
int marchInbox = instance.get(Calendar.MARCH);
String march= arr[marchInbox]; //月
int month = instance.get(Calendar.DAY_OF_MONTH);//日
int hour = instance.get(Calendar.HOUR); //时
int Minute = instance.get(Calendar.MINUTE);
int second = instance.get(Calendar.SECOND);
int week = instance.get(Calendar.DAY_OF_WEEK);// 星期
System.out.println(year + "年" + march + month + "日" + " "
+ xinqi[week] +" "+hour+":"+Minute+":"+second);
}
调用main方法:
public static void main(String[] args) {
GetDate();
System.out.println("-----------------");
GetDateDemo1();
System.out.println("--------------------");
Demo1(2016);
System.out.println("--------------");
Demo2();
}
上面得到结果如下:
2016年10月13日星期四 10:14:36
-----------------
2017年九月12日 星期二
--------------------
29
--------------
2016年十月12日 星期三 10:14:36