當前位置: 首頁>>代碼示例>>VB.NET>>正文


VB.NET Double.Equals方法代碼示例

本文整理匯總了VB.NET中System.Double.Equals方法的典型用法代碼示例。如果您正苦於以下問題:VB.NET Double.Equals方法的具體用法?VB.NET Double.Equals怎麽用?VB.NET Double.Equals使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在System.Double的用法示例。


在下文中一共展示了Double.Equals方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的VB.NET代碼示例。

示例1:

' Initialize two doubles with apparently identical values
Dim double1 As Double = .33333
Dim double2 As Double = 1/3
' Compare them for equality
Console.WriteLine(double1.Equals(double2))    ' displays False
開發者ID:VB.NET開發者,項目名稱:System,代碼行數:5,代碼來源:Double.Equals

示例2:

' Initialize two doubles with apparently identical values
Dim double1 As Double = .33333
Dim double2 As Double = 1/3
' Define the tolerance for variation in their values
Dim difference As Double = Math.Abs(double1 * .00001)

' Compare the values
' The output to the console indicates that the two values are equal
If Math.Abs(double1 - double2) <= difference Then
   Console.WriteLine("double1 and double2 are equal.")
Else
   Console.WriteLine("double1 and double2 are unequal.")
End If
開發者ID:VB.NET開發者,項目名稱:System,代碼行數:13,代碼來源:Double.Equals

示例3: Main

Module Example
   Public Sub Main()
      Dim value1 As Double = .1 * 10
      Dim value2 As Double = 0
      For ctr As Integer =  0 To 9
         value2 += .1
      Next
               
      Console.WriteLine("{0:R} = {1:R}: {2}", value1, value2,
                        HasMinimalDifference(value1, value2, 1))
   End Sub

   Public Function HasMinimalDifference(value1 As Double, value2 As Double, units As Integer) As Boolean
      Dim lValue1 As long =  BitConverter.DoubleToInt64Bits(value1)
      Dim lValue2 As long =  BitConverter.DoubleToInt64Bits(value2)
      
      ' If the signs are different, Return False except for +0 and -0.
      If ((lValue1 >> 63) <> (lValue2 >> 63)) Then
         If value1 = value2 Then
            Return True
         End If           
         Return False
      End If

      Dim diff As Long =  Math.Abs(lValue1 - lValue2)

      If diff <= units Then
         Return True
      End If

      Return False
   End Function
End Module
開發者ID:VB.NET開發者,項目名稱:System,代碼行數:33,代碼來源:Double.Equals

輸出:

1 = 0.99999999999999989: True

示例4: Example

Module Example
   Dim value As Double = 112
   
   Public Sub Main()
      Dim byte1 As Byte = 112
      Console.WriteLine("value = byte1: {0,16}", value.Equals(byte1))
      TestObjectForEquality(byte1)
      
      Dim short1 As Short = 112
      Console.WriteLine("value = short1: {0,16}", value.Equals(short1))
      TestObjectForEquality(short1)

      Dim int1 As Integer = 112
      Console.WriteLine("value = int1: {0,18}", value.Equals(int1))
      TestObjectForEquality(int1)

      Dim long1 As Long = 112
      Console.WriteLine("value = long1: {0,17}", value.Equals(long1))
      TestObjectForEquality(long1)

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

      Dim uint1 As UInteger = 112
      Console.WriteLine("value = uint1: {0,18}", value.Equals(uint1))
      TestObjectForEquality(uint1)

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

      Dim sng1 As Single = 112
      Console.WriteLine("value = sng1: {0,19}", value.Equals(sng1))
      TestObjectForEquality(sng1)
   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
開發者ID:VB.NET開發者,項目名稱:System,代碼行數:53,代碼來源:Double.Equals

輸出:

value = byte1:             True
112 (Double) = 112 (Byte): False

value = short1:             True
112 (Double) = 112 (Int16): False

value = int1:               True
112 (Double) = 112 (Int32): False

value = long1:              True
112 (Double) = 112 (Int64): False

value = sbyte1:             True
112 (Double) = 112 (SByte): False

value = ushort1:             True
112 (Double) = 112 (UInt16): False

value = uint1:               True
112 (Double) = 112 (UInt32): False

value = ulong1:              True
112 (Double) = 112 (UInt64): False

value = dec1:                 True
112 (Double) = 112 (Decimal): False

value = sng1:                True
112 (Double) = 112 (Single): False

示例5:

' Initialize two doubles with apparently identical values
Dim double1 As Double = .33333
Dim double2 As Object = 1/3
' Compare them for equality
Console.WriteLine(double1.Equals(double2))    ' displays False
開發者ID:VB.NET開發者,項目名稱:System,代碼行數:5,代碼來源:Double.Equals


注:本文中的System.Double.Equals方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。