标签:
package TestDate;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Scanner;
public class VisualCalendar {
/**
* 可视化日历
* @param args
*/
public static void main(String[] args) {
System.out.println("请输入年月日(格式:2001-12-25):");
Scanner scan = new Scanner(System.in);
//从键盘输入指定格式的字符串
String str = scan.nextLine();
//System.out.println(str);
//定义特定格式的格式化类
DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
try {
//将字符串转成相应格式的日期
Date date = format.parse(str);
//System.out.println(date);
Calendar calendar = new GregorianCalendar();
//将日期设置成日历类的对象
calendar.setTime(date);
//System.out.println(calendar.getTime());
//获取输入的天
int day = calendar.get(Calendar.DATE);
//System.out.println("day="+day);
//将日历对象的天设置成1号,方便下一步计算当月有多少天
calendar.set(Calendar.DATE, 1);
//获得这个日期的天是当周的第几天
int week = calendar.get(Calendar.DAY_OF_WEEK);
//获取这个月最大的天数
int maxDay = calendar.getActualMaximum(Calendar.DATE);
//System.out.println("week="+week);
//System.out.println("maxDay="+maxDay);
System.out.println("日\t一\t二\t三\t四\t五\t六");
int flag = 0;
for(int i=1;i<week;i++){
System.out.print("\t");
flag ++;
}
for(int i = 1;i<=maxDay;i++){
if(i==day){
System.out.print('*');
}
System.out.print(i+"\t");
flag ++;
if(flag%7==0){
System.out.println();
}
}
} catch (ParseException e) {
e.printStackTrace();
}
}
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:
原文地址:http://blog.csdn.net/u011637069/article/details/47215759