英語で読む

次の方法で共有


Enum.CompareTo(Object) メソッド

定義

指定したオブジェクトとこのインスタンスを比較し、これらの相対値を示す値を返します。

C#
public int CompareTo (object target);
C#
public int CompareTo (object? target);

パラメーター

target
Object

比較対象のオブジェクト、または null

戻り値

このインスタンスと target の相対値を示す符号付き数値。

説明
0 より小さい値 このインスタンスの値が target より小さい値です。
ゼロ このインスタンスの値が target の値と同じです。
0 より大きい値 このインスタンスの値が target の値より大きいか、targetnull です。

実装

例外

target とこのインスタンスは同じ型ではありません。

このインスタンスの型は SByteInt16Int32Int64ByteUInt16UInt32UInt64 のいずれでもありません。

このインスタンスは null です。

次の例は、EnumコンテキストでCompareToを使用する方法を示しています。

C#
using System;

public class CompareToTest {
    enum VehicleDoors { Motorbike = 0, Sportscar = 2, Sedan = 4, Hatchback = 5 };

    public static void Main() {
        VehicleDoors myVeh = VehicleDoors.Sportscar;
        VehicleDoors yourVeh = VehicleDoors.Motorbike;
        VehicleDoors otherVeh = VehicleDoors.Sedan;

        Console.WriteLine("Does a {0} have more doors than a {1}?", myVeh, yourVeh);
        Console.WriteLine( "{0}{1}", myVeh.CompareTo(yourVeh) > 0 ? "Yes" : "No", Environment.NewLine );

        Console.WriteLine("Does a {0} have more doors than a {1}?", myVeh, otherVeh);
        Console.WriteLine( "{0}", myVeh.CompareTo(otherVeh) > 0 ? "Yes" : "No" );
    }
}
// The example displays the following output:
//       Does a Sportscar have more doors than a Motorbike?
//       Yes
//
//       Does a Sportscar have more doors than a Sedan?
//       No

適用対象

製品 バージョン
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

こちらもご覧ください