第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

必要時(shí)計(jì)算周數(shù),包括第53周

必要時(shí)計(jì)算周數(shù),包括第53周

C#
慕桂英3389331 2021-03-29 17:14:48
我試圖找到一種從非標(biāo)準(zhǔn)開(kāi)始日期算出周數(shù)的好方法。第一周應(yīng)包含四月的第一個(gè)星期日。為了計(jì)算這一點(diǎn),我只瀏覽了4月的前7天,直到找到第一個(gè)星期日。幾周將從星期日開(kāi)始。通常,我會(huì)嘗試通過(guò)以下方式解決此問(wèn)題:numberOfDaysDifferenceBetweenEpoch / 7 % 52 + 1;但是,大約每5年計(jì)算一次,因?yàn)橐荒曛杏?3周。顯然,如果恰好是53周的一年,上述功能將無(wú)法正常工作。一個(gè)簡(jiǎn)單的解決方案是僅使兩個(gè)函數(shù)采用52或53的模數(shù),但是我希望有一種更干凈的方法。解決這個(gè)問(wèn)題的最佳方法是什么?
查看完整描述

1 回答

?
暮色呼如

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超9個(gè)贊

這是一種應(yīng)該起作用的方法。如果您經(jīng)常使用GetEpochInYear方法,則可能需要對(duì)其進(jìn)行優(yōu)化。


private static DateTime GetEpochInYear(int year)

{

    DateTime currentYearEpoch = new DateTime(year, 4, 1);

    while (currentYearEpoch.DayOfWeek != DayOfWeek.Sunday)

    {

        currentYearEpoch = currentYearEpoch.AddDays(1);

    }

    return currentYearEpoch;

}


private static int GetWeekNumber(DateTime dateOfInterest)

{

    DateTime currentYearEpoch = GetEpochInYear(dateOfInterest.Year);

    if (dateOfInterest < currentYearEpoch)

    {

        currentYearEpoch = GetEpochInYear(dateOfInterest.Year - 1);

    }            

    int days = (int)(dateOfInterest - currentYearEpoch).TotalDays;

    return (days / 7) +1;

}


查看完整回答
反對(duì) 回復(fù) 2021-04-10
  • 1 回答
  • 0 關(guān)注
  • 176 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)