BigInteger.Equals 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
傳回值,這個值表示兩個數值是否相等。
多載
Equals(UInt64) |
傳回值,這個值表示目前執行個體與不帶正負號的 64 位元整數是否有相同的值。 |
Equals(Object) |
傳回值,這個值表示目前執行個體與指定的物件是否有相同的值。 |
Equals(BigInteger) |
傳回值,這個值表示目前執行個體與指定的 BigInteger 物件是否有相同的值。 |
Equals(Int64) |
傳回值,這個值表示目前執行個體與帶正負號的 64 位元整數是否有相同的值。 |
Equals(UInt64)
重要
此 API 不符合 CLS 規範。
傳回值,這個值表示目前執行個體與不帶正負號的 64 位元整數是否有相同的值。
public:
bool Equals(System::UInt64 other);
[System.CLSCompliant(false)]
public bool Equals (ulong other);
[<System.CLSCompliant(false)>]
override this.Equals : uint64 -> bool
Public Function Equals (other As ULong) As Boolean
參數
- other
- UInt64
要比較的不帶正負號 64 位元整數。
傳回
如果目前執行個體與不帶正負號的 64 位元整數有相同的值,則為 true
,否則為 false
。
- 屬性
範例
下列範例會比較數顆星與地球 Epsilon Indi 與地球距離的近似距離,以判斷它們是否相等。 此範例會使用 方法的每個多載 Equals 來測試是否相等。
#using <System.Numerics.dll>
using namespace System;
using namespace System::Numerics;
void main()
{
const Int64 LIGHT_YEAR = 5878625373183;
BigInteger altairDistance = 17 * LIGHT_YEAR;
BigInteger epsilonIndiDistance = 12 * LIGHT_YEAR;
BigInteger ursaeMajoris47Distance = 46 * LIGHT_YEAR;
Int64 tauCetiDistance = 12 * LIGHT_YEAR;
UInt64 procyon2Distance = 12 * LIGHT_YEAR;
Object^ wolf424ABDistance = 14 * LIGHT_YEAR;
Console::WriteLine("Approx. equal distances from Epsilon Indi to:");
Console::WriteLine(" Altair: {0}",
epsilonIndiDistance.Equals(altairDistance));
Console::WriteLine(" Ursae Majoris 47: {0}",
epsilonIndiDistance.Equals(ursaeMajoris47Distance));
Console::WriteLine(" TauCeti: {0}",
epsilonIndiDistance.Equals(tauCetiDistance));
Console::WriteLine(" Procyon 2: {0}",
epsilonIndiDistance.Equals(procyon2Distance));
Console::WriteLine(" Wolf 424 AB: {0}",
epsilonIndiDistance.Equals(wolf424ABDistance));
}
/*
The example displays output like the following:
Approx. equal distances from Epsilon Indi to:
Altair: False
Ursae Majoris 47: False
TauCeti: True
Procyon 2: True
Wolf 424 AB: False
*/
const long LIGHT_YEAR = 5878625373183;
BigInteger altairDistance = 17 * LIGHT_YEAR;
BigInteger epsilonIndiDistance = 12 * LIGHT_YEAR;
BigInteger ursaeMajoris47Distance = 46 * LIGHT_YEAR;
long tauCetiDistance = 12 * LIGHT_YEAR;
ulong procyon2Distance = 12 * LIGHT_YEAR;
object wolf424ABDistance = 14 * LIGHT_YEAR;
Console.WriteLine("Approx. equal distances from Epsilon Indi to:");
Console.WriteLine(" Altair: {0}",
epsilonIndiDistance.Equals(altairDistance));
Console.WriteLine(" Ursae Majoris 47: {0}",
epsilonIndiDistance.Equals(ursaeMajoris47Distance));
Console.WriteLine(" TauCeti: {0}",
epsilonIndiDistance.Equals(tauCetiDistance));
Console.WriteLine(" Procyon 2: {0}",
epsilonIndiDistance.Equals(procyon2Distance));
Console.WriteLine(" Wolf 424 AB: {0}",
epsilonIndiDistance.Equals(wolf424ABDistance));
// The example displays the following output:
// Approx. equal distances from Epsilon Indi to:
// Altair: False
// Ursae Majoris 47: False
// TauCeti: True
// Procyon 2: True
// Wolf 424 AB: False
let LIGHT_YEAR = 5878625373183L
let altairDistance = 17I * bigint LIGHT_YEAR
let epsilonIndiDistance = 12I * bigint LIGHT_YEAR
let ursaeMajoris47Distance = 46I * bigint LIGHT_YEAR
let tauCetiDistance = 12L * LIGHT_YEAR
let procyon2Distance = 12uL * uint64 LIGHT_YEAR
let wolf424ABDistance = 14L * LIGHT_YEAR
printfn "Approx. equal distances from Epsilon Indi to:"
printfn $" Altair: {epsilonIndiDistance.Equals(altairDistance)}"
printfn $" Ursae Majoris 47: {epsilonIndiDistance.Equals(ursaeMajoris47Distance)}"
printfn $" TauCeti: {epsilonIndiDistance.Equals(tauCetiDistance)}"
printfn $" Procyon 2: {epsilonIndiDistance.Equals(procyon2Distance)}"
printfn $" Wolf 424 AB: {epsilonIndiDistance.Equals(wolf424ABDistance)}"
// The example displays the following output:
// Approx. equal distances from Epsilon Indi to:
// Altair: False
// Ursae Majoris 47: False
// TauCeti: True
// Procyon 2: True
// Wolf 424 AB: False
Const LIGHT_YEAR As Long = 5878625373183
Dim altairDistance As BigInteger = 17 * LIGHT_YEAR
Dim epsilonIndiDistance As BigInteger = 12 * LIGHT_YEAR
Dim ursaeMajoris47Distance As BigInteger = 46 * LIGHT_YEAR
Dim tauCetiDistance As BigInteger = 12 * LIGHT_YEAR
Dim procyon2Distance As Long = 12 * LIGHT_YEAR
Dim wolf424ABDistance As Object = 14 * LIGHT_YEAR
Console.WriteLine("Approx. equal distances from Epsilon Indi to:")
Console.WriteLine(" Altair: {0}", _
epsilonIndiDistance.Equals(altairDistance))
Console.WriteLine(" Ursae Majoris 47: {0}", _
epsilonIndiDistance.Equals(ursaeMajoris47Distance))
Console.WriteLine(" TauCeti: {0}", _
epsilonIndiDistance.Equals(tauCetiDistance))
Console.WriteLine(" Procyon 2: {0}", _
epsilonIndiDistance.Equals(procyon2Distance))
Console.WriteLine(" Wolf 424 AB: {0}", _
epsilonIndiDistance.Equals(wolf424ABDistance))
' The example displays the following output:
' Approx. equal distances from Epsilon Indi to:
' Altair: False
' Ursae Majoris 47: False
' TauCeti: True
' Procyon 2: True
' Wolf 424 AB: False
備註
若要判斷兩個對象之間的關聯性,而不只是測試是否相等,請呼叫 BigInteger.CompareTo(UInt64) 方法。
適用於
Equals(Object)
傳回值,這個值表示目前執行個體與指定的物件是否有相同的值。
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
參數
- obj
- Object
要比較的物件。
傳回
如果 obj
引數為 BigInteger 物件,且其值等於目前 BigInteger 執行個體的值,則為 true
;否則為 false
。
範例
下列範例會定義平行 Object 和 BigInteger 陣列。 一個陣列的每個元素都有與第二個陣列之對應元素相同的值。 如範例的輸出所示,只有在後者是 且BigInteger其值相等時,才會將陣列中的 BigInteger 實例視為等於陣列中的Object實例。
using System;
using System.Numerics;
public class Example
{
public static void Main()
{
object[] obj = { 0, 10, 100, new BigInteger(1000), -10 };
BigInteger[] bi = { BigInteger.Zero, new BigInteger(10),
new BigInteger(100), new BigInteger(1000),
new BigInteger(-10) };
for (int ctr = 0; ctr < bi.Length; ctr++)
Console.WriteLine(bi[ctr].Equals(obj[ctr]));
}
}
// The example displays the following output:
// False
// False
// False
// True
// False
open System.Numerics
let obj: obj[] = [| 0; 10; 100; BigInteger 1000; -10 |]
let bi =
[| BigInteger.Zero
BigInteger 10
BigInteger 100
BigInteger 1000
BigInteger -10 |]
for ctr = 0 to bi.Length - 1 do
printfn $"{bi.[ctr].Equals(obj.[ctr])}"
// The example displays the following output:
// False
// False
// False
// True
// False
Imports System.Numerics
Module Example
Public Sub Main()
Dim obj() As object = { 0, 10, 100, New BigInteger(1000), -10 }
Dim bi() As BigInteger = { BigInteger.Zero, New BigInteger(10),
New BigInteger(100), New BigInteger(1000),
New BigInteger(-10) }
For ctr As Integer = 0 To bi.Length - 1
Console.WriteLine(bi(ctr).Equals(obj(ctr)))
Next
End Sub
End Module
' The example displays the following output:
' False
' False
' False
' True
' False
備註
obj
如果自變數不是BigInteger值,方法會傳false
回 。 只有當 obj
是BigInteger值等於目前實例的實例時,方法才會傳回 true
。
若要判斷兩個對象之間的關聯性,而不只是測試是否相等,請呼叫 CompareTo(Object) 方法。
適用於
Equals(BigInteger)
傳回值,這個值表示目前執行個體與指定的 BigInteger 物件是否有相同的值。
public:
virtual bool Equals(System::Numerics::BigInteger other);
public bool Equals (System.Numerics.BigInteger other);
override this.Equals : System.Numerics.BigInteger -> bool
Public Function Equals (other As BigInteger) As Boolean
參數
- other
- BigInteger
要比較的物件。
傳回
如果這個 BigInteger 物件與 other
有相同的值,則為 true
,否則為 false
。
實作
範例
下列範例會比較數顆星與地球 Epsilon Indi 與地球距離的近似距離,以判斷它們是否相等。 此範例會使用 方法的每個多載 Equals 來測試是否相等。
#using <System.Numerics.dll>
using namespace System;
using namespace System::Numerics;
void main()
{
const Int64 LIGHT_YEAR = 5878625373183;
BigInteger altairDistance = 17 * LIGHT_YEAR;
BigInteger epsilonIndiDistance = 12 * LIGHT_YEAR;
BigInteger ursaeMajoris47Distance = 46 * LIGHT_YEAR;
Int64 tauCetiDistance = 12 * LIGHT_YEAR;
UInt64 procyon2Distance = 12 * LIGHT_YEAR;
Object^ wolf424ABDistance = 14 * LIGHT_YEAR;
Console::WriteLine("Approx. equal distances from Epsilon Indi to:");
Console::WriteLine(" Altair: {0}",
epsilonIndiDistance.Equals(altairDistance));
Console::WriteLine(" Ursae Majoris 47: {0}",
epsilonIndiDistance.Equals(ursaeMajoris47Distance));
Console::WriteLine(" TauCeti: {0}",
epsilonIndiDistance.Equals(tauCetiDistance));
Console::WriteLine(" Procyon 2: {0}",
epsilonIndiDistance.Equals(procyon2Distance));
Console::WriteLine(" Wolf 424 AB: {0}",
epsilonIndiDistance.Equals(wolf424ABDistance));
}
/*
The example displays output like the following:
Approx. equal distances from Epsilon Indi to:
Altair: False
Ursae Majoris 47: False
TauCeti: True
Procyon 2: True
Wolf 424 AB: False
*/
const long LIGHT_YEAR = 5878625373183;
BigInteger altairDistance = 17 * LIGHT_YEAR;
BigInteger epsilonIndiDistance = 12 * LIGHT_YEAR;
BigInteger ursaeMajoris47Distance = 46 * LIGHT_YEAR;
long tauCetiDistance = 12 * LIGHT_YEAR;
ulong procyon2Distance = 12 * LIGHT_YEAR;
object wolf424ABDistance = 14 * LIGHT_YEAR;
Console.WriteLine("Approx. equal distances from Epsilon Indi to:");
Console.WriteLine(" Altair: {0}",
epsilonIndiDistance.Equals(altairDistance));
Console.WriteLine(" Ursae Majoris 47: {0}",
epsilonIndiDistance.Equals(ursaeMajoris47Distance));
Console.WriteLine(" TauCeti: {0}",
epsilonIndiDistance.Equals(tauCetiDistance));
Console.WriteLine(" Procyon 2: {0}",
epsilonIndiDistance.Equals(procyon2Distance));
Console.WriteLine(" Wolf 424 AB: {0}",
epsilonIndiDistance.Equals(wolf424ABDistance));
// The example displays the following output:
// Approx. equal distances from Epsilon Indi to:
// Altair: False
// Ursae Majoris 47: False
// TauCeti: True
// Procyon 2: True
// Wolf 424 AB: False
let LIGHT_YEAR = 5878625373183L
let altairDistance = 17I * bigint LIGHT_YEAR
let epsilonIndiDistance = 12I * bigint LIGHT_YEAR
let ursaeMajoris47Distance = 46I * bigint LIGHT_YEAR
let tauCetiDistance = 12L * LIGHT_YEAR
let procyon2Distance = 12uL * uint64 LIGHT_YEAR
let wolf424ABDistance = 14L * LIGHT_YEAR
printfn "Approx. equal distances from Epsilon Indi to:"
printfn $" Altair: {epsilonIndiDistance.Equals(altairDistance)}"
printfn $" Ursae Majoris 47: {epsilonIndiDistance.Equals(ursaeMajoris47Distance)}"
printfn $" TauCeti: {epsilonIndiDistance.Equals(tauCetiDistance)}"
printfn $" Procyon 2: {epsilonIndiDistance.Equals(procyon2Distance)}"
printfn $" Wolf 424 AB: {epsilonIndiDistance.Equals(wolf424ABDistance)}"
// The example displays the following output:
// Approx. equal distances from Epsilon Indi to:
// Altair: False
// Ursae Majoris 47: False
// TauCeti: True
// Procyon 2: True
// Wolf 424 AB: False
Const LIGHT_YEAR As Long = 5878625373183
Dim altairDistance As BigInteger = 17 * LIGHT_YEAR
Dim epsilonIndiDistance As BigInteger = 12 * LIGHT_YEAR
Dim ursaeMajoris47Distance As BigInteger = 46 * LIGHT_YEAR
Dim tauCetiDistance As BigInteger = 12 * LIGHT_YEAR
Dim procyon2Distance As Long = 12 * LIGHT_YEAR
Dim wolf424ABDistance As Object = 14 * LIGHT_YEAR
Console.WriteLine("Approx. equal distances from Epsilon Indi to:")
Console.WriteLine(" Altair: {0}", _
epsilonIndiDistance.Equals(altairDistance))
Console.WriteLine(" Ursae Majoris 47: {0}", _
epsilonIndiDistance.Equals(ursaeMajoris47Distance))
Console.WriteLine(" TauCeti: {0}", _
epsilonIndiDistance.Equals(tauCetiDistance))
Console.WriteLine(" Procyon 2: {0}", _
epsilonIndiDistance.Equals(procyon2Distance))
Console.WriteLine(" Wolf 424 AB: {0}", _
epsilonIndiDistance.Equals(wolf424ABDistance))
' The example displays the following output:
' Approx. equal distances from Epsilon Indi to:
' Altair: False
' Ursae Majoris 47: False
' TauCeti: True
' Procyon 2: True
' Wolf 424 AB: False
備註
這個方法會實作 IEquatable<T> 介面,而且執行效能比Equals(Object)稍好,因為它不需要將 參數BigInteger轉換成 other
物件。
若要判斷兩 BigInteger 個對象之間的關聯性,而不只是測試是否相等,請呼叫 BigInteger.CompareTo(BigInteger) 方法。
適用於
Equals(Int64)
傳回值,這個值表示目前執行個體與帶正負號的 64 位元整數是否有相同的值。
public:
bool Equals(long other);
public bool Equals (long other);
override this.Equals : int64 -> bool
Public Function Equals (other As Long) As Boolean
參數
- other
- Int64
要比較的帶正負號 64 位元整數值。
傳回
如果帶正負號的 64 位元整數與目前執行個體有相同的值,則為 true
,否則為 false
。
範例
下列範例會從每個整數型別具現化 BigInteger 物件,但 除外 UInt64。 然後它會呼叫 Equals(Int64) 方法,以比較 BigInteger 值與傳遞至 BigInteger 建構函式的原始整數值。 如輸出所示,每個案例中的值都相等。
#using <System.Numerics.dll>
using namespace System;
using namespace System::Numerics;
void main()
{
BigInteger bigIntValue;
Byte byteValue = 16;
bigIntValue = BigInteger(byteValue);
Console::WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType()->Name, bigIntValue,
byteValue.GetType()->Name, byteValue,
bigIntValue.Equals((Int64)byteValue));
SByte sbyteValue = -16;
bigIntValue = BigInteger(sbyteValue);
Console::WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType()->Name, bigIntValue,
sbyteValue.GetType()->Name, sbyteValue,
bigIntValue.Equals((Int64)sbyteValue));
Int16 shortValue = 1233;
bigIntValue = BigInteger(shortValue);
Console::WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType()->Name, bigIntValue,
shortValue.GetType()->Name, shortValue,
bigIntValue.Equals((Int64)shortValue));
UInt16 ushortValue = 64000;
bigIntValue = BigInteger(ushortValue);
Console::WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType()->Name, bigIntValue,
ushortValue.GetType()->Name, ushortValue,
bigIntValue.Equals((Int64)ushortValue));
int intValue = -1603854;
bigIntValue = BigInteger(intValue);
Console::WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType()->Name, bigIntValue,
intValue.GetType()->Name, intValue,
bigIntValue.Equals((Int64)intValue));
UInt32 uintValue = 1223300;
bigIntValue = BigInteger(uintValue);
Console::WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType()->Name, bigIntValue,
uintValue.GetType()->Name, uintValue,
bigIntValue.Equals((Int64)uintValue));
Int64 longValue = -123822229012;
bigIntValue = BigInteger(longValue);
Console::WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType()->Name, bigIntValue,
longValue.GetType()->Name, longValue,
bigIntValue.Equals((Int64)longValue));
}
/*
The example displays output like the following:
BigInteger 16 = Byte 16 : True
BigInteger -16 = SByte -16 : True
BigInteger 1233 = Int16 1233 : True
BigInteger 64000 = UInt16 64000 : True
BigInteger -1603854 = Int32 -1603854 : True
BigInteger 1223300 = UInt32 1223300 : True
BigInteger -123822229012 = Int64 -123822229012 : True
*/
BigInteger bigIntValue;
byte byteValue = 16;
bigIntValue = new BigInteger(byteValue);
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
byteValue.GetType().Name, byteValue,
bigIntValue.Equals(byteValue));
sbyte sbyteValue = -16;
bigIntValue = new BigInteger(sbyteValue);
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
sbyteValue.GetType().Name, sbyteValue,
bigIntValue.Equals(sbyteValue));
short shortValue = 1233;
bigIntValue = new BigInteger(shortValue);
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
shortValue.GetType().Name, shortValue,
bigIntValue.Equals(shortValue));
ushort ushortValue = 64000;
bigIntValue = new BigInteger(ushortValue);
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
ushortValue.GetType().Name, ushortValue,
bigIntValue.Equals(ushortValue));
int intValue = -1603854;
bigIntValue = new BigInteger(intValue);
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
intValue.GetType().Name, intValue,
bigIntValue.Equals(intValue));
uint uintValue = 1223300;
bigIntValue = new BigInteger(uintValue);
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
uintValue.GetType().Name, uintValue,
bigIntValue.Equals(uintValue));
long longValue = -123822229012;
bigIntValue = new BigInteger(longValue);
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
longValue.GetType().Name, longValue,
bigIntValue.Equals(longValue));
// The example displays the following output:
// BigInteger 16 = Byte 16 : True
// BigInteger -16 = SByte -16 : True
// BigInteger 1233 = Int16 1233 : True
// BigInteger 64000 = UInt16 64000 : True
// BigInteger -1603854 = Int32 -1603854 : True
// BigInteger 1223300 = UInt32 1223300 : True
// BigInteger -123822229012 = Int64 -123822229012 : True
let byteValue = 16uy
let bigIntValue = BigInteger byteValue
printfn
$"{bigIntValue.GetType().Name} {bigIntValue} = {byteValue.GetType().Name} {byteValue} : {bigIntValue.Equals(byteValue)}"
let sbyteValue = -16y
let bigIntValue = BigInteger sbyteValue
printfn
$"{bigIntValue.GetType().Name} {bigIntValue} = {sbyteValue.GetType().Name} {sbyteValue} : {bigIntValue.Equals(sbyteValue)}"
let shortValue = 1233s
let bigIntValue = BigInteger shortValue
printfn
$"{bigIntValue.GetType().Name} {bigIntValue} = {shortValue.GetType().Name} {shortValue} : {bigIntValue.Equals(shortValue)}"
let ushortValue = 64000us
let bigIntValue = BigInteger ushortValue
printfn
$"{bigIntValue.GetType().Name} {bigIntValue} = {ushortValue.GetType().Name} {ushortValue} : {bigIntValue.Equals(ushortValue)}"
let intValue = -1603854
let bigIntValue = BigInteger intValue
printfn
$"{bigIntValue.GetType().Name} {bigIntValue} = {intValue.GetType().Name} {intValue} : {bigIntValue.Equals(intValue)}"
let uintValue = 1223300u
let bigIntValue = BigInteger uintValue
printfn
$"{bigIntValue.GetType().Name} {bigIntValue} = {uintValue.GetType().Name} {uintValue} : {bigIntValue.Equals(uintValue)}"
let longValue = -123822229012L
let bigIntValue = BigInteger longValue
printfn
$"{bigIntValue.GetType().Name} {bigIntValue} = {longValue.GetType().Name} {longValue} : {bigIntValue.Equals(longValue)}"
// The example displays the following output:
// BigInteger 16 = Byte 16 : True
// BigInteger -16 = SByte -16 : True
// BigInteger 1233 = Int16 1233 : True
// BigInteger 64000 = UInt16 64000 : True
// BigInteger -1603854 = Int32 -1603854 : True
// BigInteger 1223300 = UInt32 1223300 : True
// BigInteger -123822229012 = Int64 -123822229012 : True
Dim bigIntValue As BigInteger
Dim byteValue As Byte = 16
bigIntValue = New BigInteger(byteValue)
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
byteValue.GetType().Name, byteValue,
bigIntValue.Equals(byteValue))
Dim sbyteValue As SByte = -16
bigIntValue = New BigInteger(sbyteValue)
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
sbyteValue.GetType().Name, sbyteValue,
bigIntValue.Equals(sbyteValue))
Dim shortValue As Short = 1233
bigIntValue = New BigInteger(shortValue)
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
shortValue.GetType().Name, shortValue,
bigIntValue.Equals(shortValue))
Dim ushortValue As UShort = 64000
bigIntValue = New BigInteger(ushortValue)
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
ushortValue.GetType().Name, ushortValue,
bigIntValue.Equals(ushortValue))
Dim intValue As Integer = -1603854
bigIntValue = New BigInteger(intValue)
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
intValue.GetType().Name, intValue,
bigIntValue.Equals(intValue))
Dim uintValue As UInteger = 1223300
bigIntValue = New BigInteger(uintValue)
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
uintValue.GetType().Name, uintValue,
bigIntValue.Equals(uintValue))
Dim longValue As Long = -123822229012
bigIntValue = New BigInteger(longValue)
Console.WriteLine("{0} {1} = {2} {3} : {4}",
bigIntValue.GetType().Name, bigIntValue,
longValue.GetType().Name, longValue,
bigIntValue.Equals(longValue))
' The example displays the following output:
' BigInteger 16 = Byte 16 : True
' BigInteger -16 = SByte -16 : True
' BigInteger 1233 = Int16 1233 : True
' BigInteger 64000 = UInt16 64000 : True
' BigInteger -1603854 = Int32 -1603854 : True
' BigInteger 1223300 = UInt32 1223300 : True
' BigInteger -123822229012 = Int64 -123822229012 : True
備註
如果 other
是 Byte、 Int16、 Int32、 SByte、 UInt16或 UInt32 值,則會在呼叫 方法時隱含轉換成 Int64 值。
若要判斷兩個對象之間的關聯性,而不只是測試是否相等,請呼叫 BigInteger.CompareTo(Int64) 方法。