用Java寫一個日曆小程式-代碼

來源:互聯網
上載者:User

SDate部分:

class SDate {
     public static int accountDays(int year,int month) {
         switch (month) {
         case 1:
         case 3:
         case 5:
         case 7:
         case 8:
         case 10:
         case 12:
             return 31;
         case 2:
             if(isLeap(year))
                 return 29;
             else return 28;
         default:
             return 30;
         }
     }
     public static boolean isLeap(int year) {
         if (year%4 == 0 && year%100 != 0)
             return true;
         else if (year%100 == 0 && year%400 == 0)
             return true;
         else  
             return false;
     }
     public static int fixDay(int year,int month) {
         int base_year = 1;
         int[] base_month = {0,0,3,3,6,1,4,0,3,5,0,3,5};
         if (isLeap(year)) {
             base_year++;
             for (int i = 3; i<=6; i++) {
                 base_month[i] += 1;
                 if (base_month[i] == 7) {
                     base_month[i] = 0;
                 }
             }
             for (int i = 9; i <= 12; i++) {
                 base_month[i] += 1;
                 if (base_month[i] == 7) {
                     base_month[i] = 0;
                 }
             }
         }
         return (year+year/4+year/400-year/100-base_year+base_month[month]+1)%7;
     }
}

DateGrid部分:

import Javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.border.*;
import java.util.*;
public class DateGrid extends JWindow implements ActionListener {
     //DateGrid的構造方法
     public DateGrid() {
         super();
         this.design();
     }

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.