Decimal.Compare(Decimal, Decimal) Yöntem

Tanım

Belirtilen iki değeri Decimal karşılar.

public:
 static int Compare(System::Decimal d1, System::Decimal d2);
public static int Compare (decimal d1, decimal d2);
static member Compare : decimal * decimal -> int
Public Shared Function Compare (d1 As Decimal, d2 As Decimal) As Integer

Parametreler

d1
Decimal

Karşılaştırılacak ilk değer.

d2
Decimal

Karşılaştırılacak ikinci değer.

Döndürülenler

Int32

ve göreli değerlerini gösteren imzalı d1 bir d2 sayı.

Döndürülen değer Anlamı
Sıfırdan küçük d1 , 'den d2 küçük.
Sıfır d1 ve d2 eşittir.
Sıfırdan büyük d1 , 'den d2 büyüktür.

Örnekler

Aşağıdaki örnek, birkaç değeri Decimal karşılar. İlk karşılaştırmanın, değişkende gerçekleştirilen çıkarma işlemine rağmen iki değerin eşit olduğunu value2 gösterir. Bunun nedeni, türün 29 basamaklı duyarlık değerine sahip olmasıdır, ancak bu iki değer arasındaki fark yalnızca Decimal 30 basamaklı duyarlık ile algılanır.

using System;

public enum Relationship
{  LessThan = -1, Equals = 0, GreaterThan = 1 }

public class Example
{
   public static void Main()
   {
      decimal value1 = Decimal.MaxValue;
      decimal value2 = value1 - .01m;
      Console.WriteLine("{0} {2} {1}", value1, value2,
                        (Relationship) Decimal.Compare(value1, value2));

      value2 = value1 / 12m - .1m;
      value1 = value1 / 12m;
      Console.WriteLine("{0} {2} {1}", value1, value2,
                        (Relationship) Decimal.Compare(value1, value2));

      value1 = value1 - .2m;
      value2 = value2 + .1m;
      Console.WriteLine("{0} {2} {1}", value1, value2,
                        (Relationship) Decimal.Compare(value1, value2));
   }
}
// The example displays the following output:
//     79228162514264337593543950335 Equals 79228162514264337593543950335
//     6602346876188694799461995861.2 GreaterThan 6602346876188694799461995861.1
//     6602346876188694799461995861.0 LessThan 6602346876188694799461995861.2
Public Enum Relationship As Integer
    LessThan = -1
    Equals = 0
    GreaterThan = 1
End Enum

Module Example
   Public Sub Main()
      Dim value1 As Decimal = Decimal.MaxValue
      Dim value2 As Decimal = value1 - .01d
      Console.WriteLine("{0} {2} {1}", value1, value2, 
                        CType(Decimal.Compare(value1, value2), Relationship))   
   
      value2 = value1 / 12d - .1d
      value1 = value1 / 12d
      Console.WriteLine("{0} {2} {1}", value1, value2, 
                        CType(Decimal.Compare(value1, value2), Relationship))   
   
      value1 = value1 - .2d
      value2 = value2 + .1d
      Console.WriteLine("{0} {2} {1}", value1, value2, 
                        CType(Decimal.Compare(value1, value2), Relationship))   
   End Sub
End Module
' The example displays the following output:
'     79228162514264337593543950335 Equals 79228162514264337593543950335
'     6602346876188694799461995861.2 GreaterThan 6602346876188694799461995861.1
'     6602346876188694799461995861.0 LessThan 6602346876188694799461995861.2

Şunlara uygulanır

Ayrıca bkz.