3

私はいくつかのコードをレビューしていて、このビットを見つけました(書き直されました):

if ((int)CultureInfo.CurrentCulture.Calendar.GetDayOfWeek(someDate) == 7) ...

DayOfWeek(戻りタイプ)の範囲が0から6であるため、この条件は常にfalseを返すと思いますか、それとも特定のカルチャで最終的に7を返す可能性がありますか?

4

3 に答える 3

3

DayOfWeek列挙は、週に7日あるカレンダーの曜日を表します。この列挙の定数の値は、DayOfWeek.SundayからDayOfWeek.Saturdayの範囲です。整数にキャストする場合、その値の範囲はゼロ(DayOfWeek.Sundayを示す)から6(DayOfWeek.Saturdayを示す)です。

ソース-http://msdn.microsoft.com/en-us/library/system.dayofweek.aspx

于 2011-02-03T14:01:58.763 に答える
2

MSDNのDayOfWeek列挙型ページをご覧になりましたか?

DayOfWeek列挙は、週に7日あるカレンダーの曜日を表します。この列挙の定数の値は、DayOfWeek.SundayからDayOfWeek.Saturdayの範囲です。整数にキャストする場合、その値の範囲はゼロ(DayOfWeek.Sundayを示す)から6(DayOfWeek.Saturdayを示す)です。

于 2011-02-03T14:01:31.277 に答える
1

通常、GetDayOfWeekは(変換された)値7を返すことはありません。

コードから、プログラマーが何を望んでいるかは非常に不明確です。次のように書き直すことをお勧めします。

if (CultureInfo.CurrentCulture.Calendar.GetDayOfWeek(someDate) == DayOfWeek.Saturday) ...

か何か。

于 2011-02-03T14:06:59.227 に答える