C#のCompareTo()メソッドの使い方を解説
C#では、2つの値を比較する際にCompareTo()メソッドを使用します。このメソッドは、呼び出し元の値と引数で渡した値を比較し、その大小関係を整数値として返します。
CompareTo()メソッドの戻り値
CompareTo()メソッドの戻り値は以下の3パターンです。
- 0 = 両方の値が等しい場合
- 1 = 呼び出し元の値が引数の値より大きい場合(第2の数値が小さい)
- -1 = 呼び出し元の値が引数の値より小さい場合(第1の数値が小さい)
CompareTo()メソッドの実装例
それでは、C#でCompareTo()メソッドを実装するサンプルコードを見てみましょう。ここでは、同じ値を持つ2つのint型変数を比較しています。
コード例
using System;
public class Demo {
public static void Main() {
int val1 = 100;
int val2 = 100;
int res = val1.CompareTo(val2);
Console.WriteLine(res);
}
}実行結果
0
この例では、val1とval2はどちらも100という同じ値なので、比較結果として0が出力されます。もしval1の方が大きければ「1」、小さければ「-1」が出力されます。
なお、CompareTo()メソッドはint型だけでなく、string型やDateTime型など、IComparableインターフェイスを実装している多くの型でも使用できます。ソート処理や条件分岐など、値の大小比較が必要な場面で活用すると便利です。
-
C#のAnyメソッドとは?条件を満たす要素の有無を判定する使い方とサンプルコード
C#のLINQに含まれるAnyメソッドは、シーケンス(配列やリストなどのコレクション)内の要素のうち、少なくとも1つが指定した条件を満たしているかどうかを判定するメソッドです。 条件を満たす要素が1つでも存在すれば true を返し、1つも存在しなければ false を返します。 基本構文 bool result = collection.Any(要素 => 条件); 使用例 まず、次のような整数型の配列を用意します。 int[] arr = {5, 7, 10, 12, 15, 18, 20}; この配列に対して Any() メソッドを使い、「10より大きい要素が1つでも存在するかどう
-
C#のContainsKey()メソッドとは?Hashtableでキーの存在を確認する方法
C#のContainsKey()メソッドは、Hashtableコレクション内に指定したキーが存在するかどうかを確認するための便利なメソッドです。キーが存在する場合はTrue、存在しない場合はFalseを返します。ContainsKey()メソッドの基本的な使い方まず、Hashtableコレクションを作成し、いくつかの要素を追加してみましょう。Hashtable h = new Hashtable(); h.Add(1, Sam); h.Add(2, Jack); h.Add(3, Andy); h.Add(4, Katie); h.Add(5, Beth); h.Add(6, Benjamin