日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

7、实例:计算课程结束的日期

發布時間:2025/3/20 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 7、实例:计算课程结束的日期 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

假設,每周曰到周六為整的一周,每周從周日開始算起。其中每周的周一、周二、周五需要去學校上課,總共再上9天本學期就結束了。編寫 Java 程序,計算上完 9 次課后的日期及星期,以及從當天起到本學期結束總共需要度過的天數。具體的程序代碼如下:

import java.util.Calendar; public class Test {// 定義一周所要上課的天數。定義為周一、周二、周五共3天上課public static final int HAVEClass_OF_WEEK = 3;// 定義需要上的課次public static final int COURSENUM = 9;public static void main(String[] args) {int weekCount = -1; // 定義上完全部課程需要多少周,取整數int surplusDay = -1; // 取整后多余的天數int count = 0; // 獲取上了多少次課int surplusClass = -1; // 取整后所剩的課程數int total = 0; // 上課所花的時間總數Calendar calendar = Calendar.getInstance();// 獲取今天是周幾int weekdays = (calendar.get(Calendar.DAY_OF_WEEK) - 1);/** 定義一周中所要上課的天數,若上課一天則count+1 周一、周二、周五上課 今天是周三,這個星期只有周五上課*/switch (weekdays) {case 0:case 1: // 上課count++;case 2: // 上課count++;case 3:case 4:case 5: // 上課count++;case 6:break;}/** 計算今天是周幾,如果不是周末,則計算到周六還有幾天 (因為周日是一周的開始)*/if (0 != weekdays)surplusDay = 6 - weekdays;// 獲取上課所用多少周,取整weekCount = (COURSENUM - count) / HAVEClass_OF_WEEK;// 獲取取整后剩下的課程數surplusClass = (COURSENUM - count) - (weekCount * HAVEClass_OF_WEEK);/** 計算取整周后剩下的次數(從每周日開始算起) 若不剩課程,則日期-1(因為取整后的最后一天為周六,不上課) 則計算周五的日期* 若還剩1節課,肯定是周一上課,所以天數+2天 若還剩2節課,則周一、周二上課,所以天數+3天 若還剩3節課,則周一、周二、周五上課,所以天數+6天*/switch (surplusClass) {case 0:surplusDay = surplusDay - 1;break;case 1:surplusDay += 2;break;case 2:surplusDay += 3;break;case 5:surplusDay += 6;break;}// 要上課所用的總天數total = surplusDay + (weekCount * 7);// 設置課程結束當天的日期calendar.set(Calendar.DAY_OF_MONTH, calendar.get(Calendar.DAY_OF_MONTH) + total);String strWeek = "";int week = (calendar.get(Calendar.DAY_OF_WEEK) - 1);switch (week) {case 1:strWeek = "一";break;case 2:strWeek = "二";break;case 3:strWeek = "三";break;case 4:strWeek = "四";break;case 5:strWeek = "五";break;case 6:strWeek = "六";break;case 7:strWeek = "日";break;}// 如果取整后剩下的課程數為零,直接取周五的日期System.out.println("距離本學期結束還有 " + total + " 天,日期為:" + calendar.get(Calendar.YEAR) + "-"+ (calendar.get(Calendar.MONTH) + 1) + "-" + calendar.get(Calendar.DATE) + ",星期" + strWeek);} }

上述代碼首先使用 Calendar.getlnstance() 創建了一個 Calendar 實例,并通過 Calendar 類的 DAY_OF_WEEK 常量獲取了今天的星期,若今天為星期一、星期二、星期五中的任意一天,則上課的次數加 1。獲取上課所需要的周數以及剩下的次數和所需要的天數。最后設置課程結束后當前的日期,并獲取當天的星期。

運行程序,該程序的輸出結果如下:

距離本學期結束還有 19 天,日期為:2019-10-15,星期二

總結

以上是生活随笔為你收集整理的7、实例:计算课程结束的日期的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。