[C# DateTime] 等値、比較演算子で日付を判定する

DateTime構造体は等値演算子(== 、!=)、比較演算子(< <= > >=)を使ってDateTime同士の判定をすることができます。

演算子説明判定結果
==左の日時と右の日時が同じかどうか判定する同じ場合にTrue、異なる場合にFalse
!=左の日時と右の日時が異なるかどうか判定する異なる場合にTrue、同じ場合にFalse
<左の日時が右の日時より過去かどうか判定する過去の場合にTrue、それ以外の場合はFalse
<=左の日時が右の日時と同じまたは過去かどうか判定する同じまたは過去の場合にTrue、それ以外の場合はFalse
>左の日時が右の日時より未来かどうか判定する未来の場合にTrue、それ以外の場合はFalse
>=左の日時が右の日時と同じまたは未来かどうか判定する同じまたは未来の場合にTrue、それ以外の場合はFalse
using System;
class Program
{
    public static void Main()
    {
        DateTime date1 = DateTime.Parse("2020/05/01 12:30:15");
        DateTime date2 = DateTime.Parse("2020/05/01 12:30:15");
        DateTime date3 = DateTime.Parse("2020/05/02 14:33:20");

        Console.WriteLine($"date1 = {date1}");
        Console.WriteLine($"date2 = {date2}");
        Console.WriteLine($"date3 = {date3}");

        // 2つの日時が同じかどうか判定
        Console.WriteLine($"(date1 == date2) = {date1 == date2}");
        Console.WriteLine($"(date1 == date3) = {date1 == date3}");

        // 2つの日時が異なるか判定
        Console.WriteLine($"(date1 != date2) = {date1 != date2}");
        Console.WriteLine($"(date1 != date3) = {date1 != date3}");

        // 左の日時が右の日時より過去日時か判定
        Console.WriteLine($"(date1 < date2)  = {date1 < date2}");
        Console.WriteLine($"(date1 < date3)  = {date1 < date3}");

        // 左の日時が右の日時と同じまたは過去日時か判定
        Console.WriteLine($"(date1 <= date2) = {date1 <= date2}");
        Console.WriteLine($"(date1 <= date3) = {date1 <= date3}");

        // 左の日時が右の日時より未来日時か判定 
        Console.WriteLine($"(date1 > date2)  = {date1 > date2}");
        Console.WriteLine($"(date1 > date3)  = {date1 > date3}");

        // 左の日時が右の日時と同じまたは未来日時か判定
        Console.WriteLine($"(date1 >= date2) = {date1 >= date2}");
        Console.WriteLine($"(date1 >= date3) = {date1 >= date3}");
    }
}
date1 = 2020/05/01 12:30:15
date2 = 2020/05/01 12:30:15
date3 = 2020/05/02 14:33:20
(date1 == date2) = True
(date1 == date3) = False
(date1 != date2) = False
(date1 != date3) = True
(date1 < date2)  = False
(date1 < date3)  = True
(date1 <= date2) = True
(date1 <= date3) = True
(date1 > date2)  = False
(date1 > date3)  = False
(date1 >= date2) = True
(date1 >= date3) = False

C# プログラミング講座に戻る

コメント

タイトルとURLをコピーしました