大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 常見問題 Java培訓機構:Java怎樣實現萬年歷

Java培訓機構:Java怎樣實現萬年歷

更新時間:2024-04-21 14:47:43 來源:動力節點 瀏覽730次

要實現一個Java萬年歷,可以采用以下步驟:

 

獲取用戶輸入的年份和月份,可以使用Scanner類或JOptionPane類實現。

 

判斷該年份是否為閏年。如果該年份能夠被4整除但不能被100整除,或者能夠被400整除,那么該年就是閏年,否則為平年??梢酝ㄟ^Java的條件語句實現。

 

獲取該月份的第一天是星期幾,可以使用Java的Calendar類實現。通過設置Calendar對象的年份和月份,然后調用get方法獲取星期幾的值。

 

計算該月份的總天數,可以使用Java的switch語句根據月份來確定天數。

 

創建二維數組,用于存儲日歷表格。

 

填充日歷表格。先將第一行填充完整,然后在循環中從第二行開始填充。如果當月天數小于等于表格中剩余的天數,則將該月所有日期填充完畢。否則,填充該月的所有日期后,剩余的表格空間設置為0。

 

輸出日歷表格,可以使用Java的System.out.println方法逐行輸出。

 

下面是Java代碼示例:

 

import java.util.Calendar;

import java.util.Scanner;

 

public class CalendarDemo {

 

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        System.out.print("請輸入年份:");

        int year = sc.nextInt();

        System.out.print("請輸入月份:");

        int month = sc.nextInt();

        sc.close();

 

        int days = getDaysOfMonth(year, month);

        int firstDayOfWeek = getFirstDayOfWeek(year, month);

 

        int[][] calendar = new int[6][7];

        int day = 1;

        for (int i = 0; i < calendar.length; i++) {

            for (int j = 0; j < calendar[i].length; j++) {

                if (i == 0 && j < firstDayOfWeek) {

                    calendar[i][j] = 0;

                } else if (day > days) {

                    calendar[i][j] = 0;

                } else {

                    calendar[i][j] = day;

                    day++;

                }

            }

        }

 

        System.out.println(year + "年" + month + "月的日歷:");

        System.out.println("日\t一\t二\t三\t四\t五\t六");

        for (int i = 0; i < calendar.length; i++) {

            for (int j = 0; j < calendar[i].length; j++) {

                if (calendar[i][j] == 0) {

                    System.out.print("\t");

                } else {

                    System.out.print(calendar[i][j] + "\t");

                }

            }

            System.out.println();

        }

    }

 

    // 獲取指定年月的總天數

    public static int getDaysOfMonth(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;

}

}

 

我們需要定義一個方法來輸出當前月份的日歷,代碼如下:

public static void printCalendar(int year, int month) {

    int[][] calendar = getCalendar(year, month);

    System.out.println(" Sun Mon Tue Wed Thu Fri Sat");

    for (int i = 0; i < calendar.length; i++) {

        for (int j = 0; j < calendar[i].length; j++) {

            if (calendar[i][j] == 0) {

                System.out.print("    ");

            } else {

                System.out.printf("%4d", calendar[i][j]);

            }

        }

        System.out.println();

    }

}

 

這個方法首先調用 getCalendar() 方法獲取當前月份的日歷數組,然后按照日歷格式輸出到控制臺上。

 

最后,我們可以編寫一個 main() 方法來測試我們的日歷程序:

 

public static void main(String[] args) {

    int year = 2023;

    int month = 3;

    printCalendar(year, month);

}

 

這個 main() 方法輸出的是 2023 年 3 月的日歷,運行程序后輸出結果如下:

 

 Sun Mon Tue Wed Thu Fri Sat

                  1   2   3

  4   5   6   7   8   9  10

 11  12  13  14  15  16  17

 18  19  20  21  22  23  24

 25  26  27  28  29  30  31

 

 

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 国产精品国产福利国产秒拍 | 久久精品伊人波多野结 | 香蕉网视频 | 欧美日韩亚洲一区二区 | 99精品国产在这里白浆 | 苦瓜se影院在线视频网站 | 成人中文字幕一区二区三区 | 色综合五月激情综合色一区 | 男女免费视频 | 伊在人亚洲香蕉精品播放 | 国产亚洲欧美精品久久久 | 天天做天天添婷婷我也去 | 色伊伊 | 欧美一级毛片免费观看 | 最新国产福利片在线观看 | 一道精品视频一区二区三区图片 | 精品新一区二区三区四区 | 国产日本欧美在线观看 | 国产精品66在线观看 | 免费一级毛片在级播放 | 国产一级视频在线观看 | 日本免费毛片在线高清看 | 欧美日韩顶级毛片www免费看 | 亚洲伊人久久大香线蕉结合 | 午夜免费| 久久77777| 网站一级片 | 久久久久久久久久鸭 | 一级免费看片 | 全黄h全肉边做边吃奶在线观看 | 深夜视频免费看 | 91精品国产色综合久久不卡蜜 | 欧美激情级毛片 | 精品一区二区视频在线观看 | 久久精品男人的天堂 | 亚洲国产精品日韩在线观看 | 女人18免费毛片视频 | 成人嫩草研究院永久网址 | 欧美日韩第三页 | 中文字幕亚洲综合久久 | 亚洲综合激情九月婷婷 |