日历小案列

来源:互联网 发布:淘宝上的安踏官方网店 编辑:程序博客网 时间:2024/06/03 06:37

注意,此代码运用了 取系统的当前时间跟 scanner差不多的,

还标记了,当前日​

此日历在输出时运用的代码比前面的容易好多​

import java.util.Calendar;

import java.util.Scanner;

import java.util.Random;//放在开头,跟Scanner 一样。

public class Test1{

public static void main(String []args){Scanner in =new Scanner(System.in);int year=0;do{System.out.println("请输入年份:");year= in.nextInt();}while(year<1900);int month=0;do{System.out.println("请输入月份:");month=in.nextInt();}while(month<1||month>12);int sum=getAllDys(year,month);int weekDay=sum%7;System.out.println(year+"年"+month+"月的一号是星期"+weekDay);System.out.println("总天数");System.out.println(sum);System.out.println("*********************************");System.out.println("星期天"+"\t"+"星期一"+"\t"+"星期二"+"\t"+"星期三"+"\t"+"星期四"+"\t"+"星期五"+"\t"+"星期六");for(int i=0;iSystem.out.print("\t");}int days= getDays(year,month);for(int i=1;i<=days;i++){if(isCurrentDay(year,month,i)){System.out.print("*"+i+"*"+"\t");}else{System.out.print(i+"\t");}if((i+weekDay)%7==0){System.out.println();}}System.out.println();}//判断是否为当前天public static boolean isCurrentDay(int year ,int  month,int i){//取系统的当前时间,注意在最前面需要加个引用的头Calendar rightNow=Calendar.getInstance();//Calendar.YEAR 表示你要取得年的值int y=rightNow.get(Calendar.YEAR);int m=rightNow.get(Calendar.MONTH)+1;//Calendar.MONTH 表示 要取的月份 但是它是从0开始算得,所以得+1;int d=rightNow.get(Calendar.DAY_OF_MONTH);System.out.println(y+""  +m+""+d);//比较是否相同 与你输的 年月if(year==y && month==m  && i==d){return true;}else{return false;}}public static int getAllDys(int year, int month){//求出1900 到 year -1那年的总天数//2求出 1到MOTH-1 月的天数//3再多加一个1(1号)int sum=0;for(int  i=1900;iif(isRun( i)){sum+=366;}else{sum+=365;}}for(int i=1;isum+=getDays(year,i);}sum=sum+1;return sum;}public static boolean isRun( int year ){if( (year%4==0&&year0!=0)||(year@0==0) ){return true;}else{return false;}}public static int getDays( int year,int month){int days=0;switch( month){case 1:case 3:case 5:case 7:case 8:case 10:case 12: days=31;break;case 4:case 6:case 9:case 11:days=30; break;case 2:if(isRun( year)){days=29;}else{days=28;}break;}return days;}

}

0 0
原创粉丝点击