import java.util.Calendar;
import java.util.GregorianCalendar;public class Month{
int year;
int month;
int day;
Calendar obj = Calendar.getInstance();
Month(int year,int month)
{
this.year=year;
this.month=month;
}
String monthIndex()
{
String[] Month = { "1","2","3","4","5","6","7","8","9","10","11","12"};
return Month[month];
}
void show ()
{
System.out.println("显示日历");
System.out.println("\t\t\t"+year+" 年 "+monthIndex()+" 月");
System.out.println("\t日\t一\t二\t三\t四\t五\t六");
//先用set(year,month,1);方法获得当月第一天是星期几
obj.set(year,month,1);
for (int i=0;i<obj.get(Calendar.DAY_OF_WEEK)-1;i++)
{
System.out.print("\t");
}
//为什么我在这里用set(year,month+1,0);方法时,month得加上1不然得出来的天数是上一个月的天数
//为什么我前面用set(year,month,1)时,能正确的得出这个月的第一天是星期几
//set(year,month,0)方法里面的0指得是什么意思啊
obj.set(year,month+1,0);
day=obj.get(Calendar.DAY_OF_MONTH);
for(int j=1;j<=day;j++)
{
System.out.print("\t"+j);
obj.set(year,month,j);
if(obj.get(Calendar.DAY_OF_WEEK)==7)
{
System.out.println();
}
}
}
public static void main(String[] args)
{
int year;
int month;
Calendar today = Calendar.getInstance();
year = today.get(Calendar.YEAR);
month = today.get(Calendar.MONTH)+1;
Month showCal = new Month(year, month-1);
showCal.show();
}
}
import java.util.GregorianCalendar;public class Month{
int year;
int month;
int day;
Calendar obj = Calendar.getInstance();
Month(int year,int month)
{
this.year=year;
this.month=month;
}
String monthIndex()
{
String[] Month = { "1","2","3","4","5","6","7","8","9","10","11","12"};
return Month[month];
}
void show ()
{
System.out.println("显示日历");
System.out.println("\t\t\t"+year+" 年 "+monthIndex()+" 月");
System.out.println("\t日\t一\t二\t三\t四\t五\t六");
//先用set(year,month,1);方法获得当月第一天是星期几
obj.set(year,month,1);
for (int i=0;i<obj.get(Calendar.DAY_OF_WEEK)-1;i++)
{
System.out.print("\t");
}
//为什么我在这里用set(year,month+1,0);方法时,month得加上1不然得出来的天数是上一个月的天数
//为什么我前面用set(year,month,1)时,能正确的得出这个月的第一天是星期几
//set(year,month,0)方法里面的0指得是什么意思啊
obj.set(year,month+1,0);
day=obj.get(Calendar.DAY_OF_MONTH);
for(int j=1;j<=day;j++)
{
System.out.print("\t"+j);
obj.set(year,month,j);
if(obj.get(Calendar.DAY_OF_WEEK)==7)
{
System.out.println();
}
}
}
public static void main(String[] args)
{
int year;
int month;
Calendar today = Calendar.getInstance();
year = today.get(Calendar.YEAR);
month = today.get(Calendar.MONTH)+1;
Month showCal = new Month(year, month-1);
showCal.show();
}
}
import java.util.GregorianCalendar;public class Month { int year;
int month;
int day;
Calendar obj = Calendar.getInstance(); Month(int year, int month) {
this.year = year;
this.month = month;
} String monthIndex() {
String[] Month = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"};
return Month[month];
} void show() {
System.out.println("显示日历");
System.out.println("\t\t\t" + year + " 年 " + monthIndex() + " 月");
System.out.println("\t日\t一\t二\t三\t四\t五\t六");
// 先用set(year,month,1);方法获得当月第一天是星期几
obj.set(year, month, 1);
for (int i = 0; i < obj.get(Calendar.DAY_OF_WEEK) - 1; i++) {
System.out.print("\t");
}
// 为什么我在这里用set(year,month+1,0);方法时,month得加上1不然得出来的天数是上一个月的天数
// 为什么我前面用set(year,month,1)时,能正确的得出这个月的第一天是星期几
// set(year,month,0)方法里面的0指得是什么意思啊
obj.set(year, month + 1, 0);
day = obj.get(Calendar.DAY_OF_MONTH);
for (int j = 1; j <= day; j++) {
System.out.print("\t" + j);
obj.set(year, month, j);
if (obj.get(Calendar.DAY_OF_WEEK) == 7) {
System.out.println();
}
}
} public static void main(String[] args) {
int year;
int month;
Calendar today = Calendar.getInstance();
year = today.get(Calendar.YEAR);
month = today.get(Calendar.MONTH) + 1;
Month showCal = new Month(year, month - 1);
showCal.show();
}}