Decimal.Compare(Decimal, Decimal) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Membandingkan dua nilai yang ditentukan Decimal .
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
Parameter
- d1
- Decimal
Nilai pertama yang akan dibandingkan.
- d2
- Decimal
Nilai kedua untuk dibandingkan.
Mengembalikan
Angka yang ditandatangani yang menunjukkan nilai relatif dan d1d2.
| Mengembalikan nilai | Makna |
|---|---|
| Kurang dari nol |
d1 kurang dari d2.
|
| Nol |
d1 dan d2 sama.
|
| Lebih besar dari nol |
d1 lebih besar dari d2.
|
Contoh
Contoh berikut membandingkan beberapa Decimal nilai. Perhatikan bahwa perbandingan pertama menunjukkan bahwa kedua nilai sama meskipun operasi pengurangan dilakukan pada value2 variabel. Ini karena Decimal jenis ini memiliki presisi 29 digit, sedangkan perbedaan antara kedua nilai ini hanya dapat dideteksi dengan presisi 30 digit.
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
open System
type Relationship =
| LessThan = -1
| Equals = 0
| GreaterThan = 1
[<EntryPoint>]
let main _ =
let value1 = Decimal.MaxValue
let value2 = value1 - 0.01m
printfn $"{value1} {Decimal.Compare(value1, value2) |> enum<Relationship>} {value2}"
let value2 = value1 / 12m - 0.1m
let value1 = value1 / 12m
printfn $"{value1} {Decimal.Compare(value1, value2) |> enum<Relationship>} {value2}"
let value1 = value1 - 0.2m
let value2 = value2 + 0.1m
printfn $"{value1} {Decimal.Compare(value1, value2) |> enum<Relationship>} {value2}"
0
// 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