Int16.Equals Yöntem

Tanım

Bu örneğin belirtilen nesneye veya Int16öğesine eşit olup olmadığını belirten bir değer döndürür.

Aşırı Yüklemeler

Name Description
Equals(Int16)

Bu örneğin belirtilen Int16 bir değere eşit olup olmadığını belirten bir değer döndürür.

Equals(Object)

Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değer döndürür.

Equals(Int16)

Kaynak:
Int16.cs
Kaynak:
Int16.cs
Kaynak:
Int16.cs
Kaynak:
Int16.cs
Kaynak:
Int16.cs

Bu örneğin belirtilen Int16 bir değere eşit olup olmadığını belirten bir değer döndürür.

public:
 virtual bool Equals(short obj);
public bool Equals(short obj);
override this.Equals : int16 -> bool
Public Function Equals (obj As Short) As Boolean

Parametreler

obj
Int16

Int16 Bu örnekle karşılaştıracak bir değer.

Döndürülenler

true bu örnekle aynı değere sahipse obj ; değilse, false.

Uygulamalar

Açıklamalar

Bu yöntem arabirimini uygular ve parametresini System.IEquatable<T> bir nesneye dönüştürmesi Equals gerekmediğinden biraz daha iyi obj performans gösterir.

Arayanlara Notlar

Derleyici aşırı yükleme çözümlemesi, iki Equals(Int16) yöntem aşırı yüklemesinin davranışındaki belirgin bir farkı hesaba katabilir. Bağımsız değişken ile arasında obj örtük bir dönüştürme tanımlanmışsa ve bağımsız değişken bir Int16olarak yazılmazsa, derleyiciler örtük bir dönüştürme gerçekleştirir ve yöntemini çağırırObject.Equals(Int16) Aksi takdirde, bağımsız değişkeni bir değer değilse Equals(Object) her zaman döndüren false yöntemini çağırırlarobj.Int16 Aşağıdaki örnekte iki yöntem aşırı yüklemesi arasındaki davranış farkı gösterilmektedir. ve değerleri söz konusu olduğundaByte, derleyici otomatik olarak bir genişletme dönüştürmesi gerçekleştirdiğinden ve yöntemini çağırdığından SByte ilk karşılaştırma döndürürtrue; ikinci karşılaştırma ise derleyici yöntemini çağırdığı Equals(Int16) için döndürürfalse.Equals(Object)

using System;

public class Example
{
   static short value = 112;

   public static void Main()
   {
      byte byte1= 112;
      Console.WriteLine("value = byte1: {0,15}", value.Equals(byte1));
      TestObjectForEquality(byte1);

      int int1 = 112;
      Console.WriteLine("value = int1: {0,17}", value.Equals(int1));
      TestObjectForEquality(int1);

      sbyte sbyte1 = 112;
      Console.WriteLine("value = sbyte1: {0,15}", value.Equals(sbyte1));
      TestObjectForEquality(sbyte1);

      ushort ushort1 = 112;
      Console.WriteLine("value = ushort1: {0,15}", value.Equals(ushort1));
      TestObjectForEquality(ushort1);

      decimal dec1 = 112m;
      Console.WriteLine("value = dec1: {0,20}", value.Equals(dec1));
      TestObjectForEquality(dec1);

      double dbl1 = 112;
      Console.WriteLine("value = dbl1: {0,19}", value.Equals(dbl1));
      TestObjectForEquality(dbl1);
   }

   private static void TestObjectForEquality(Object obj)
   {
      Console.WriteLine("{0} ({1}) = {2} ({3}): {4}\n",
                        value, value.GetType().Name,
                        obj, obj.GetType().Name,
                        value.Equals(obj));
   }
}
// The example displays the following output:
//       value = byte1:            True
//       112 (Int16) = 112 (Byte): False
//
//       value = int1:             False
//       112 (Int16) = 112 (Int32): False
//
//       value = sbyte1:            True
//       112 (Int16) = 112 (SByte): False
//
//       value = ushort1:            False
//       112 (Int16) = 112 (UInt16): False
//
//       value = dec1:                False
//       112 (Int16) = 112 (Decimal): False
//
//       value = dbl1:               False
//       112 (Int16) = 112 (Double): False
let value = 112s

let testObjectForEquality (obj: obj) =
    printfn $"{value} ({value.GetType().Name}) = {obj} ({obj.GetType().Name}): {value.Equals obj}\n"
                    
let byte1 = 112uy
printfn $"value = byte1: {value.Equals(int16 byte1),15}"
testObjectForEquality byte1

let int1 = 112
printfn $"value = int1: {value.Equals(int16 int1),17}"
testObjectForEquality int1

let sbyte1 = 112uy
printfn $"value = sbyte1: {value.Equals(int16 sbyte1),15}"
testObjectForEquality sbyte1

let ushort1 = 112us
printfn $"value = ushort1: {value.Equals(int16 ushort1),15}"
testObjectForEquality ushort1

let dec1 = 112M
printfn $"value = dec1: {value.Equals dec1,20}"
testObjectForEquality dec1

let dbl1 = 112.0
printfn $"value = dbl1: {value.Equals dbl1,19}"
testObjectForEquality dbl1
 

// The example displays the following output:
//       value = byte1:            True
//       112 (Int16) = 112 (Byte): False
//
//       value = int1:             False
//       112 (Int16) = 112 (Int32): False
//
//       value = sbyte1:            True
//       112 (Int16) = 112 (SByte): False
//
//       value = ushort1:            False
//       112 (Int16) = 112 (UInt16): False
//
//       value = dec1:                False
//       112 (Int16) = 112 (Decimal): False
//
//       value = dbl1:               False
//       112 (Int16) = 112 (Double): False
Module Example
   Dim value As Int16 = 112
   
   Public Sub Main()
      Dim byte1 As Byte = 112
      Console.WriteLine("value = byte1: {0,15}", value.Equals(byte1))
      TestObjectForEquality(byte1)
      
      Dim int1 As Integer = 112
      Console.WriteLine("value = int1: {0,17}", value.Equals(int1))
      TestObjectForEquality(int1)

      Dim sbyte1 As SByte = 112
      Console.WriteLine("value = sbyte1: {0,15}", value.Equals(sbyte1))
      TestObjectForEquality(sbyte1)
      
      Dim ushort1 As UShort = 112
      Console.WriteLine("value = ushort1: {0,16}", value.Equals(ushort1))
      TestObjectForEquality(ushort1)

      Dim dec1 As Decimal = 112d
      Console.WriteLine("value = dec1: {0,20}", value.Equals(dec1))
      TestObjectForEquality(dec1)

      Dim dbl1 As Double = 112
      Console.WriteLine("value = dbl1: {0,19}", value.Equals(dbl1))
      TestObjectForEquality(dbl1)
   End Sub
   
   Private Sub TestObjectForEquality(obj As Object)
      Console.WriteLine("{0} ({1}) = {2} ({3}): {4}",
                        value, value.GetType().Name,
                        obj, obj.GetType().Name,
                        value.Equals(obj))
      Console.WriteLine()
   End Sub
End Module
' The example displays the following output:
'       value = byte1:            True
'       112 (Int16) = 112 (Byte): False
'
'       value = int1:             False
'       112 (Int16) = 112 (Int32): False
'
'       value = sbyte1:            True
'       112 (Int16) = 112 (SByte): False
'
'       value = ushort1:            False
'       112 (Int16) = 112 (UInt16): False
'
'       value = dec1:                False
'       112 (Int16) = 112 (Decimal): False
'
'       value = dbl1:               False
'       112 (Int16) = 112 (Double): False

Ayrıca bkz.

Şunlara uygulanır

Equals(Object)

Kaynak:
Int16.cs
Kaynak:
Int16.cs
Kaynak:
Int16.cs
Kaynak:
Int16.cs
Kaynak:
Int16.cs

Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değer döndürür.

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

Parametreler

obj
Object

Bu örnekle karşılaştıracak bir nesne.

Döndürülenler

trueörneğiyse obj ve bu örneğin değerine eşitseInt16; değilse, false.

Örnekler

Aşağıdaki kod örneği, iki kısa değeri karşılaştırarak ve aynı sayıyı temsil ediyorlarsa veya Equals göstermiyorsa döndürerek Int16 bağlamında truekullanımını false gösterir.

Int16 myVariable1 = 20;
Int16 myVariable2 = 20;

// Get and display the declaring type.
Console.WriteLine("\nType of 'myVariable1' is '{0}' and"+
     " value is :{1}",myVariable1.GetType(), myVariable1);
Console.WriteLine("Type of 'myVariable2' is '{0}' and"+
     " value is :{1}",myVariable2.GetType(), myVariable2);

// Compare 'myVariable1' instance with 'myVariable2' Object.
if( myVariable1.Equals( myVariable2 ) )
   Console.WriteLine( "\nStructures 'myVariable1' and "+
         "'myVariable2' are equal");
else
   Console.WriteLine( "\nStructures 'myVariable1' and "+
         "'myVariable2' are not equal");
let myVariable1 = 20s
let myVariable2 = 20s

// Get and display the declaring type.
printfn $"\nType of 'myVariable1' is '{myVariable1.GetType()}' and value is: {myVariable1}"
printfn $"\nType of 'myVariable1' is '{myVariable2.GetType()}' and value is: {myVariable2}"

// Compare 'myVariable1' instance with 'myVariable2' Object.
if myVariable1.Equals myVariable2 then
    printfn "\nStructures 'myVariable1' and 'myVariable2' are equal"
else
    printfn "\nStructures 'myVariable1' and 'myVariable2' are not equal"
  Dim myVariable1 As Int16 = 20
  Dim myVariable2 As Int16 = 20
  
' Get and display the declaring type.
Console.WriteLine(ControlChars.NewLine + "Type of 'myVariable1' is '{0}' and" +  _
              " value is :{1}", myVariable1.GetType().ToString(), myVariable1.ToString())
Console.WriteLine("Type of 'myVariable2' is '{0}' and" +  _
           " value is :{1}", myVariable2.GetType().ToString(), myVariable2.ToString())
  
  ' Compare 'myVariable1' instance with 'myVariable2' Object.
  If myVariable1.Equals(myVariable2) Then
     Console.WriteLine(ControlChars.NewLine + "Structures 'myVariable1' and " +  _
                 "'myVariable2' are equal")
  Else
     Console.WriteLine(ControlChars.NewLine + "Structures 'myVariable1' and " +   _
              "'myVariable2' are not equal")
  End If

Arayanlara Notlar

Derleyici aşırı yükleme çözümlemesi, iki Equals(Int16) yöntem aşırı yüklemesinin davranışındaki belirgin bir farkı hesaba katabilir. Bağımsız değişken ile arasında obj örtük bir dönüştürme tanımlanmışsa ve bağımsız değişken bir Int16olarak yazılmazsa, derleyiciler örtük bir dönüştürme gerçekleştirir ve yöntemini çağırırObject.Equals(Int16) Aksi takdirde, bağımsız değişkeni bir değer değilse Equals(Object) her zaman döndüren false yöntemini çağırırlarobj.Int16 Aşağıdaki örnekte iki yöntem aşırı yüklemesi arasındaki davranış farkı gösterilmektedir. ve değerleri söz konusu olduğundaByte, derleyici otomatik olarak bir genişletme dönüştürmesi gerçekleştirdiğinden ve yöntemini çağırdığından SByte ilk karşılaştırma döndürürtrue; ikinci karşılaştırma ise derleyici yöntemini çağırdığı Equals(Int16) için döndürürfalse.Equals(Object)

using System;

public class Example
{
   static short value = 112;

   public static void Main()
   {
      byte byte1= 112;
      Console.WriteLine("value = byte1: {0,15}", value.Equals(byte1));
      TestObjectForEquality(byte1);

      int int1 = 112;
      Console.WriteLine("value = int1: {0,17}", value.Equals(int1));
      TestObjectForEquality(int1);

      sbyte sbyte1 = 112;
      Console.WriteLine("value = sbyte1: {0,15}", value.Equals(sbyte1));
      TestObjectForEquality(sbyte1);

      ushort ushort1 = 112;
      Console.WriteLine("value = ushort1: {0,15}", value.Equals(ushort1));
      TestObjectForEquality(ushort1);

      decimal dec1 = 112m;
      Console.WriteLine("value = dec1: {0,20}", value.Equals(dec1));
      TestObjectForEquality(dec1);

      double dbl1 = 112;
      Console.WriteLine("value = dbl1: {0,19}", value.Equals(dbl1));
      TestObjectForEquality(dbl1);
   }

   private static void TestObjectForEquality(Object obj)
   {
      Console.WriteLine("{0} ({1}) = {2} ({3}): {4}\n",
                        value, value.GetType().Name,
                        obj, obj.GetType().Name,
                        value.Equals(obj));
   }
}
// The example displays the following output:
//       value = byte1:            True
//       112 (Int16) = 112 (Byte): False
//
//       value = int1:             False
//       112 (Int16) = 112 (Int32): False
//
//       value = sbyte1:            True
//       112 (Int16) = 112 (SByte): False
//
//       value = ushort1:            False
//       112 (Int16) = 112 (UInt16): False
//
//       value = dec1:                False
//       112 (Int16) = 112 (Decimal): False
//
//       value = dbl1:               False
//       112 (Int16) = 112 (Double): False
let value = 112s

let testObjectForEquality (obj: obj) =
    printfn $"{value} ({value.GetType().Name}) = {obj} ({obj.GetType().Name}): {value.Equals obj}\n"
                    
let byte1 = 112uy
printfn $"value = byte1: {value.Equals(int16 byte1),15}"
testObjectForEquality byte1

let int1 = 112
printfn $"value = int1: {value.Equals(int16 int1),17}"
testObjectForEquality int1

let sbyte1 = 112uy
printfn $"value = sbyte1: {value.Equals(int16 sbyte1),15}"
testObjectForEquality sbyte1

let ushort1 = 112us
printfn $"value = ushort1: {value.Equals(int16 ushort1),15}"
testObjectForEquality ushort1

let dec1 = 112M
printfn $"value = dec1: {value.Equals dec1,20}"
testObjectForEquality dec1

let dbl1 = 112.0
printfn $"value = dbl1: {value.Equals dbl1,19}"
testObjectForEquality dbl1
 

// The example displays the following output:
//       value = byte1:            True
//       112 (Int16) = 112 (Byte): False
//
//       value = int1:             False
//       112 (Int16) = 112 (Int32): False
//
//       value = sbyte1:            True
//       112 (Int16) = 112 (SByte): False
//
//       value = ushort1:            False
//       112 (Int16) = 112 (UInt16): False
//
//       value = dec1:                False
//       112 (Int16) = 112 (Decimal): False
//
//       value = dbl1:               False
//       112 (Int16) = 112 (Double): False
Module Example
   Dim value As Int16 = 112
   
   Public Sub Main()
      Dim byte1 As Byte = 112
      Console.WriteLine("value = byte1: {0,15}", value.Equals(byte1))
      TestObjectForEquality(byte1)
      
      Dim int1 As Integer = 112
      Console.WriteLine("value = int1: {0,17}", value.Equals(int1))
      TestObjectForEquality(int1)

      Dim sbyte1 As SByte = 112
      Console.WriteLine("value = sbyte1: {0,15}", value.Equals(sbyte1))
      TestObjectForEquality(sbyte1)
      
      Dim ushort1 As UShort = 112
      Console.WriteLine("value = ushort1: {0,16}", value.Equals(ushort1))
      TestObjectForEquality(ushort1)

      Dim dec1 As Decimal = 112d
      Console.WriteLine("value = dec1: {0,20}", value.Equals(dec1))
      TestObjectForEquality(dec1)

      Dim dbl1 As Double = 112
      Console.WriteLine("value = dbl1: {0,19}", value.Equals(dbl1))
      TestObjectForEquality(dbl1)
   End Sub
   
   Private Sub TestObjectForEquality(obj As Object)
      Console.WriteLine("{0} ({1}) = {2} ({3}): {4}",
                        value, value.GetType().Name,
                        obj, obj.GetType().Name,
                        value.Equals(obj))
      Console.WriteLine()
   End Sub
End Module
' The example displays the following output:
'       value = byte1:            True
'       112 (Int16) = 112 (Byte): False
'
'       value = int1:             False
'       112 (Int16) = 112 (Int32): False
'
'       value = sbyte1:            True
'       112 (Int16) = 112 (SByte): False
'
'       value = ushort1:            False
'       112 (Int16) = 112 (UInt16): False
'
'       value = dec1:                False
'       112 (Int16) = 112 (Decimal): False
'
'       value = dbl1:               False
'       112 (Int16) = 112 (Double): False

Şunlara uygulanır