📄 calendar.java
字号:
import java.util.*;
import java.util.GregorianCalendar;
class Calendar_Printout
{
public static void main(String args[])
{
Calendar c = Calendar.getInstance();
Date d=c.getTime();//Mon Mar 10 10:59:41 GMT+08:00 2008
int year; //current year
int currentDate;// current date of the month, 1...31
int i,j;
String[] Day=new String[]{"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};
for (i=0;i<Day.length;i++) System.out.print(Day[i]+" ");
System.out.println();
int index;
String dateString=d.toString(); //obtain entire date string
int yearIndex=dateString.lastIndexOf(" ");
year=Integer.parseInt(dateString.substring(yearIndex+1));
index=dateString.indexOf(" ");
index=dateString.indexOf(" ", index+1);
currentDate=Integer.parseInt(dateString.substring(index+1, dateString.indexOf(" ", index+1)));
String currentDay=dateString.substring(0, dateString.indexOf(" "));
int currentDayIndex=0;
//find out what day is current day
for (i=0;i<7;i++) if (currentDay.compareTo(Day[i])==0)
{
currentDayIndex=i;
break;
};
//begin to print out day from 1 to CurrentDate-1
int outIndex=0;
for (i=1;i<currentDate;i++)
{
outIndex=currentDayIndex-(currentDate-i)%7;
if (outIndex<0) outIndex+=7;
if (i==1)
{
for (j=1;j<=outIndex;j++) System.out.print(" ");
System.out.print(i);
if (outIndex==6) System.out.println();
else System.out.print(" ");
}
else
{
System.out.print(i);
if (outIndex==6) System.out.println();
else
{
if (i<=9) System.out.print(" ");
else System.out.print(" ");
}
};
};
//begin to print out current day
if (currentDate==1)
{
for (j=1;j<=currentDayIndex;j++) System.out.print(" ");
System.out.print(1+"*");
if (currentDayIndex==6) System.out.println();
else System.out.print(" ");
}
else
{
System.out.print(i+"*");
if (outIndex==5) System.out.println();
else if (i<=9) System.out.print(" ");
else System.out.print(" ");
outIndex++;
};
//begin to print out current day+1 to end
j=i+1;
int totalDaysOfMonth=0;
String month=(d.toString().substring(4, 7));
if (month.compareTo("Feb")==0)
{
String GMTString=d.toString();
GregorianCalendar ww=new GregorianCalendar();
if (ww.isLeapYear(year)) totalDaysOfMonth=29;
else totalDaysOfMonth=28;
}
else
{
if (month.compareTo("Jan")==0) totalDaysOfMonth=31;
if (month.compareTo("Mar")==0) totalDaysOfMonth=31;
if (month.compareTo("Apr")==0) totalDaysOfMonth=30;
if (month.compareTo("May")==0) totalDaysOfMonth=31;
if (month.compareTo("Jun")==0) totalDaysOfMonth=30;
if (month.compareTo("Jul")==0) totalDaysOfMonth=31;
if (month.compareTo("Aug")==0) totalDaysOfMonth=31;
if (month.compareTo("Sep")==0) totalDaysOfMonth=30;
if (month.compareTo("Oct")==0) totalDaysOfMonth=31;
if (month.compareTo("Nov")==0) totalDaysOfMonth=30;
if (month.compareTo("Dec")==0) totalDaysOfMonth=31;
};
for (j=i+1;j<=totalDaysOfMonth;j++)
{
outIndex=(currentDayIndex+j-currentDate)%7;
System.out.print(j);
if (outIndex==6) System.out.println();
else
{
if (j<=9) System.out.print(" ");
else System.out.print(" ");
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -