亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在我的輸出中輸入特定日期時,我收到“null”

在我的輸出中輸入特定日期時,我收到“null”

嚕嚕噠 2022-12-15 14:51:28
我的代碼可以完美地編譯和運行,但是當我的任何日期是星期六時,輸出為“null”而不是“SATURDAY”。下面將舉例說明這個問題。我試圖在我的“getDayOfWeek”方法上更改我的 if 語句,但我似乎沒有解決方案,我也試圖從有經驗的編碼人員那里獲得幫助,但由于 java 不是他們的主要語言,他們似乎在苦苦掙扎......預期成績:java MyCalendar 29/02/201929/02/2019 in not a valid date, please re-input a valid date:         25/05/201925/05/2019 is a Saturday and located in the fourth week of May 2019The calendar of May 2019 is:SUN MON TUE WED THU FRI SAT            1   2   3   4  5   6   7   8   9   10  1112  13  14  15  16  17  1819  20  21  22  23  24  2526  27  28  29  30  31實際結果:25/05/2019 is a null located in the FOURTH week of MAY 2019The calendar of May 2019 is:SUN MON TUE WED THU FRI SAT            1   2   3   4  5   6   7   8   9   10  1112  13  14  15  16  17  1819  20  21  22  23  24  2526  27  28  29  30  31另一個日期(不是星期六)的結果:24/05/2019 is a FRIDAY located in the FOURTH week of MAY 2019The calendar of May 2019 is:SUN MON TUE WED THU FRI SAT            1   2   3   4  5   6   7   8   9   10  1112  13  14  15  16  17  1819  20  21  22  23  24  2526  27  28  29  30  31特定問題:輸出在星期六當天的所有日期打印 null,而其他非星期六的日期將實現所需的正確輸出。
查看完整描述

2 回答

?
HUX布斯

TA貢獻1876條經驗 獲得超6個贊

if (h < Day.values().length && h > 0) {

應該改成

if (h < (Day.values().length + 1) && h > 0) {


查看完整回答
反對 回復 2022-12-15
?
狐的傳說

TA貢獻1804條經驗 獲得超3個贊

如果這是用于生產代碼,Basil Bourque 的評論是正確的:您不應該開發自己的MyDate類,而應該依賴內置LocalDate類。

另一方面,如果正如我所假設的那樣,這是一個編程練習,它是一個很好的練習,并且沒有理由(我可以看到)為什么你不應該努力通過它。

計算星期幾的公式是:


    //calculating h value

    int h = (q + (13 * (m + 1) / 5) + K + (K / 4) + (J / 4) + 5 * J) % 7;

(順便說一句,請找到更好的變量名并遵守 Java 命名約定:變量名不能是大寫字母。)我不明白這個公式,但假設它是正確的,它將星期幾計算為0 = 周六,1 = 周日,直到 6 = 周五。要使用此數字查找您的Day枚舉,請使用


        output = Day.values()[(h + 6) % 7]; //getting respective  enum value

由于hwill 始終為非負數且小于 7,因此您不需要封閉if語句。只是output無條件分配給。通過這些更改,我得到


Enter the date as day month year : 25 5 2019

25/5/2019 is a SATURDAY located in the FOURTH week of MAY 2019



The Calendar of MAY 2019 is :

Su Mo Tu We Th Fr Sa

         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


查看完整回答
反對 回復 2022-12-15
  • 2 回答
  • 0 關注
  • 125 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號