Nullable<T>.Equals(Object) Nullable<T>.Equals(Object) Nullable<T>.Equals(Object) Nullable<T>.Equals(Object) Method

定義

現在の Nullable<T> オブジェクトが指定されたオブジェクトと等しいかどうかを示します。Indicates whether the current Nullable<T> object is equal to a specified object.

public:
 override bool Equals(System::Object ^ other);
public override bool Equals (object other);
override this.Equals : obj -> bool
Public Overrides Function Equals (other As Object) As Boolean

パラメーター

other
Object Object Object Object

オブジェクト。An object.

戻り値

other パラメーターが現在の Nullable<T> オブジェクトと等しい場合は true。それ以外の場合は falsetrue if the other parameter is equal to the current Nullable<T> object; otherwise, false.

比較した値が等しいかどうかを判断する基準については、次の表を参照してください。This table describes how equality is defined for the compared values:

戻り値Return Value 説明Description
true HasValue プロパティが false で、other パラメーターが null です。The HasValue property is false, and the other parameter is null. つまり、定義上は 2 つの null 値が等価です。That is, two null values are equal by definition.

または-or- HasValue プロパティが true で、Value プロパティによって返される値が other パラメーターと等価です。The HasValue property is true, and the value returned by the Value property is equal to the other parameter.

false 現在の HasValue 構造体の Nullable<T> プロパティが true で、other パラメーターが null です。The HasValue property for the current Nullable<T> structure is true, and the other parameter is null.

または-or- 現在の HasValue 構造体の Nullable<T> プロパティが false で、other パラメーターが null ではありません。The HasValue property for the current Nullable<T> structure is false, and the other parameter is not null.

- または --or- 現在の HasValue 構造体の Nullable<T> プロパティが true で、Value プロパティによって返される値が other パラメーターと等価ではありません。The HasValue property for the current Nullable<T> structure is true, and the value returned by the Value property is not equal to the other parameter.

次のコード例では、オブジェクトとNullable<T>オブジェクトが現在Nullable<T>のオブジェクトと等しいかどうかを判断します。The following code example determines whether an object and a Nullable<T> object are equal to the current Nullable<T> object.

// This code example demonstrates the Nullable<T>.Equals 
// methods.

using System;

class Sample 
{
    public static void Main() 
    {
    int? nullInt1 = 100;
    int? nullInt2 = 200;
    object myObj;

// Determine if two nullable of System.Int32 values are equal.
// The nullable objects have different values.
    Console.Write("1) nullInt1 and nullInt2 ");
    if (nullInt1.Equals(nullInt2))
        Console.Write("are");
    else
        Console.Write("are not");
    Console.WriteLine(" equal.");

// Determine if a nullable of System.Int32 and an object 
// are equal. The object contains the boxed value of the
// nullable object.

    myObj = (object)nullInt1;
    Console.Write("2) nullInt1 and myObj ");
    if (nullInt1.Equals(myObj))
        Console.Write("are");
    else
        Console.Write("are not");
    Console.WriteLine(" equal.");
    }
}

/*
This code example produces the following results:

1) nullInt1 and nullInt2 are not equal.
2) nullInt1 and myObj are equal.

*/
' This code example demonstrates the Nullable(Of T).Equals 
' methods.

Class Sample
    Public Shared Sub Main() 
        Dim nullInt1 As Nullable(Of Integer) = 100 
        Dim nullInt2 As Nullable(Of Integer) = 200
        Dim myObj As Object
        
    ' Determine if two nullable of System.Int32 values are equal. 
    ' The nullable objects have different values.
        Console.Write("1) nullInt1 and nullInt2 ")
        If nullInt1.Equals(nullInt2) Then
            Console.Write("are")
        Else
            Console.Write("are not")
        End If
        Console.WriteLine(" equal.")
        
    ' Determine if a nullable of System.Int32 and an object 
    ' are equal. The object contains the boxed value of the
    ' nullable object.
        myObj = CType(nullInt1, Object)
        Console.Write("2) nullInt1 and myObj ")
        If nullInt1.Equals(myObj) Then
            Console.Write("are")
        Else
            Console.Write("are not")
        End If
        Console.WriteLine(" equal.")
    End Sub 'Main 
End Class 'Sample

'
'This code example produces the following results:
'
'1) nullInt1 and nullInt2 are not equal.
'2) nullInt1 and myObj are equal.
'

注釈

true other null other現在HasValue Equalsの構造体のプロパティがで、引数がでない場合は、パラメーターをのメソッドに渡すことによって、等値が決定されます。 Nullable<T>現在Nullable<T>の構造体の基になる値。If the HasValue property of the current Nullable<T> structure is true and the other argument is not null, equality is determined by passing the other parameter to the Equals method of the underlying value of the current Nullable<T> structure.

適用対象