黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

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

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

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

要實現一個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

 

 

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 日韩a级毛片 | 国产高清不卡视频 | 日韩成人在线观看 | 亚洲国产精品日韩在线观看 | 中文字幕第九页 | 日本人欧美xx| 亚洲国产情侣一区二区三区 | 黄色小网站在线观看 | 天天做天天爱夜夜大爽完整 | 国产综合第一页在线视频 | 亚洲欧美日韩一区超高清 | 99久久伊人 | 欧美久在线观看在线观看 | 国产年成美女网站视频免费看 | 一级做a爰片欧美一区 | 日本工里番h本无遮拦全彩 日本高清中文字幕在线观穿线视频 | 在线视免费频观看韩国aaa | 亚洲日本视频 | 91福利国产在线观看一区二区 | 欧美成人午夜做受视频 | 日本婷婷| 久久成年人视频 | 人人澡人人澡 | 久草视频手机在线观看 | 一级做a免费视频观看网站 一男一女下面一进一出性视频 | 日本亚洲天堂 | 男人天堂网2021 | 99re在线视频 | 亚洲线精品久久一区二区三区 | 日韩手机在线观看 | 高清在线一区二区 | 欧美精品一区二区精品久久 | 色视频免费观看 | 2019偷偷狠狠的日日 | 91成人在线免费视频 | 一级黄色片一级黄色片 | 日韩人体在线 | 性xxxxxx| 欧美福利在线 | cao美女视频网站在线观看 | 欧美13一18成年性 |