Int64.Equals Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vrátí hodnotu, která označuje, zda je tato instance rovna zadanému objektu Int64 .
Přetížení
Equals(Int64) |
Vrátí hodnotu, která označuje, zda je tato instance rovna zadané Int64 hodnotě. |
Equals(Object) |
Vrací hodnotu, která určuje, zda je tato instance rovna zadanému objektu. |
Equals(Int64)
Vrátí hodnotu, která označuje, zda je tato instance rovna zadané Int64 hodnotě.
public:
virtual bool Equals(long obj);
public bool Equals (long obj);
override this.Equals : int64 -> bool
Public Function Equals (obj As Long) As Boolean
Parametry
Návraty
true
obj
, pokud má stejnou hodnotu jako tato instance; v opačném případě false
.
Implementuje
Poznámky
Tato metoda implementuje System.IEquatable<T> rozhraní a provádí mírně lepší, než Equals protože není nutné převést obj
parametr na objekt.
Poznámky pro volající
Řešení přetížení kompilátoru může pohlížet na zjevné rozdíly v chování dvou Equals(Int64) metod přetížení. Pokud implicitní převod mezi obj
argumentem a Int64 je definován a argument není zadán jako Object , kompilátory provádějí implicitní převod a volají Equals(Int64) metodu. Jinak volají Equals(Object) metodu, která vždy vrátí, false
Pokud její argument není obj
Int64 hodnota. Následující příklad znázorňuje rozdíl v chování mezi přetíženími dvou metod. V případě Byte hodnot,,, SByte Int16 , a UInt16 Int32 UInt32 , první porovnání se vrátí, true
protože kompilátor automaticky provede rozšiřující převod a volá Equals(Int64) metodu, zatímco druhé porovnání se vrátí, false
protože kompilátor volá Equals(Object) metodu.
Platí pro
Equals(Object)
Vrací hodnotu, která určuje, zda je tato instance rovna zadanému objektu.
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
Parametry
- obj
- Object
Objekt k porovnání s touto instancí.
Návraty
true
Pokud obj
je instancí Int64 a rovna hodnotě této instance; v opačném případě false
.
Příklady
Následující příklad kódu ukazuje použití Equals
v kontextu Int64
, porovnání dvou dlouhých hodnot a vrácení, true
Pokud představují stejné číslo, nebo false
Pokud ne.
Int64 myVariable1 = 80;
Int64 myVariable2 = 80;
// 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" );
Int64 myVariable1 = 80;
Int64 myVariable2 = 80;
// 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 = 80L
let myVariable2 = 80L
// Get and display the declaring type.
printfn $"\nType of 'myVariable1' is '{myVariable1.GetType()}' and value is: {myVariable1}"
printfn $"\nType of 'myVariable2' 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 Int64 = 80
Dim myVariable2 As Int64 = 80
' 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
Poznámky pro volající
Řešení přetížení kompilátoru může pohlížet na zjevné rozdíly v chování dvou Equals(Int64) metod přetížení. Pokud implicitní převod mezi obj
argumentem a Int64 je definován a argument není zadán jako Object , kompilátory provádějí implicitní převod a volají Equals(Int64) metodu. Jinak volají Equals(Object) metodu, která vždy vrátí, false
Pokud její argument není obj
Int64 hodnota. Následující příklad znázorňuje rozdíl v chování mezi přetíženími dvou metod. V případě Byte hodnot,,, SByte Int16 , a UInt16 Int32 UInt32 , první porovnání se vrátí, true
protože kompilátor automaticky provede rozšiřující převod a volá Equals(Int64) metodu, zatímco druhé porovnání se vrátí, false
protože kompilátor volá Equals(Object) metodu.