package date;
import java.text.DateFormat;
import java.text.Format;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Scanner;
import javax.print.DocFlavor.STRING;
/**
* @author Administrator
*
* 做一個可視化日曆
* 知識點:Calendar 的用法
* Format 格式化字符串
*/
public class VisualCalendar {
public static void main(String[] args) {
System.out.println("請輸入日期(格式:2011-10-15):");
Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine();
String temp = str;
DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
try {
Date date = format.parse(temp);
Calendar calendar = new GregorianCalendar();
calendar.setTime(date);
calendar.set(Calendar.DATE, 1); //set 設置該月第一天
// System.out.println(calendar.get(Calendar.DAY_OF_WEEK)); //獲取第一天是星期幾
// System.out.println(calendar.getActualMaximum(Calendar.DATE)); //獲取一個月多少天
System.out.println("日\t一\t二\t三\t四\t五\t六");
//判斷在星期幾來來確定輸入多少個製表符
for(int M = 0 ;M<calendar.get(Calendar.DAY_OF_WEEK) - 1;M++){
System.out.print("\t");
}
int maxDate = calendar.getActualMaximum(Calendar.DATE);
for(int d = 1;d<=maxDate;d++){
System.out.print(d + "\t");
int w=calendar.get(Calendar.DAY_OF_WEEK);
if(w == Calendar.SATURDAY){
System.out.println();
}
calendar.add(Calendar.DATE,1);
}
//定義一個字符串 然後進行格式化字符串
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
實訓 -- 製作一個可視化日曆
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.