C#のDecimal.CompareTo()メソッドとは?使い方と戻り値をサンプルコードで解説
概要
C#のDecimal.CompareTo()メソッドは、現在のインスタンスと指定されたオブジェクトまたはDecimal型の値を比較し、両者の相対的な大小関係を示す整数値を返します。数値の並べ替えや条件分岐などで頻繁に利用される便利なメソッドです。
構文
CompareTo()メソッドには、以下の2つのオーバーロードが用意されています。
public int CompareTo (decimal value); public int CompareTo (object value);
戻り値の意味
- 0より小さい値:現在のインスタンスが引数の値より小さい場合
- 0:現在のインスタンスが引数の値と等しい場合
- 0より大きい値:現在のインスタンスが引数の値より大きい場合
使用例1:等しい値同士の比較
まずは、同じ値を持つ2つのDecimal変数を比較する例を見てみましょう。
using System;
public class Demo {
public static void Main(){
Decimal val1 = 65.15m;
Decimal val2 = 65.15m;
Console.WriteLine("Decimal 1 = "+val1);
Console.WriteLine("Decimal 2 = "+val2);
Console.WriteLine("Comparison Value = "+(val1.CompareTo(val2)));
}
}出力結果
Decimal 1 = 65.15 Decimal 2 = 65.15 Comparison Value = 0
両者の値が完全に一致しているため、比較結果として「0」が返されます。
使用例2:object型との比較
次に、object型にボックス化されたDecimal値と比較する例です。CompareTo(object)オーバーロードを使用すると、異なる型のオブジェクトとも比較できます。
using System;
public class Demo {
public static void Main(){
Decimal val1 = 65.15m;
object val2 = (decimal)4.1428600E+2;
Console.WriteLine("Decimal 1 = "+val1);
Console.WriteLine("Decimal 2 = "+val2);
Console.WriteLine("Comparison Value = "+(val1.CompareTo(val2)));
}
}出力結果
Decimal 1 = 65.15 Decimal 2 = 414.286 Comparison Value = -1
val1(65.15)の方がval2(414.286)よりも小さいため、比較結果として「-1」が返されます。このように、CompareTo()メソッドの戻り値を見ることで、2つのDecimal値の大小関係を簡単に判定できます。
-
C#のDecimal.CompareTo()メソッドとは?使い方と戻り値をサンプルコードで解説
概要C#のDecimal.CompareTo()メソッドは、現在のインスタンスと指定されたオブジェクトまたはDecimal型の値を比較し、両者の相対的な大小関係を示す整数値を返します。数値の並べ替えや条件分岐などで頻繁に利用される便利なメソッドです。構文CompareTo()メソッドには、以下の2つのオーバーロードが用意されています。public int CompareTo (decimal value); public int CompareTo (object value);戻り値の意味0より小さい値:現在のインスタンスが引数の値より小さい場合0:現在のインスタンスが引数の値と等しい場合0
-
C#のCompareTo()メソッドの使い方を解説
C#では、2つの値を比較する際にCompareTo()メソッドを使用します。このメソッドは、呼び出し元の値と引数で渡した値を比較し、その大小関係を整数値として返します。CompareTo()メソッドの戻り値CompareTo()メソッドの戻り値は以下の3パターンです。0 = 両方の値が等しい場合1 = 呼び出し元の値が引数の値より大きい場合(第2の数値が小さい)-1 = 呼び出し元の値が引数の値より小さい場合(第1の数値が小さい)CompareTo()メソッドの実装例それでは、C#でCompareTo()メソッドを実装するサンプルコードを見てみましょう。ここでは、同じ値を持つ2つのint型変数