C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のUInt32.CompareTo()メソッドとは?使い方をサンプルコード付きで解説

C#のUInt32.CompareTo()メソッドは、現在のUInt32インスタンスと指定されたオブジェクトまたはuint値を比較し、両者の相対的な大小関係を示す整数値を返します。数値の比較処理やソート処理などで活用される便利なメソッドです。

構文

UInt32.CompareTo()メソッドには、以下の2つのオーバーロードが用意されています。

public int CompareTo(object val);
public int CompareTo(uint val);

1つ目の構文では比較対象としてオブジェクト(object型)を指定し、2つ目の構文では符号なし整数(uint型)を指定します。

戻り値

このメソッドの戻り値は以下のように解釈できます。

  • 0:現在のインスタンスと指定された値が等しい場合
  • 0より小さい値:現在のインスタンスが指定された値より小さい場合
  • 0より大きい値:現在のインスタンスが指定された値より大きい場合

使用例1:uint値との比較

まず、uint値同士を比較する基本的な例を見てみましょう。

using System;
public class Demo {
   public static void Main(){
      uint val1 = 25;
      uint val2 = 55;
      int res = val1.CompareTo(val2);
      Console.WriteLine("戻り値(比較結果)= "+res);
      if (res > 0)
         Console.WriteLine("val1 > val2");
      else if (res < 0)
         Console.WriteLine("val1 < val2");
      else
         Console.WriteLine("val1 = val2");
   }
}

出力結果

戻り値(比較結果)= -30
val1 < val2

この例では、25と55を比較しているため、戻り値は「-30」となり、val1がval2より小さいことが判定されています。

使用例2:object型との比較

次に、object型にボックス化された値と比較する例を紹介します。

using System;
public class Demo {
   public static void Main(){
      uint val1 = 25;
      object val2 = (uint)2;
      int res = val1.CompareTo(val2);
      Console.WriteLine("戻り値(比較結果)= "+res);
      if (res > 0)
         Console.WriteLine("val1 > val2");
      else if (res < 0)
         Console.WriteLine("val1 < val2");
      else
         Console.WriteLine("val1 = val2");
   }
}

出力結果

戻り値(比較結果)= 23
val1 > val2

この例では、25と2を比較しているため、戻り値は「23」となり、val1がval2より大きいことが判定されました。

まとめ

UInt32.CompareTo()メソッドを使うことで、uint値同士だけでなく、object型に格納された値とも簡単に比較できます。戻り値の正負と0を判定するだけで大小関係がわかるため、条件分岐や並べ替えのロジックに幅広く活用できるでしょう。

  1. C#のUInt16.Equalsメソッドとは?使い方をサンプルコード付きで解説

    C#のUInt16.Equals()メソッドは、現在のインスタンスが指定したオブジェクトまたはUInt16(16ビット符号なし整数)の値と等しいかどうかを示すbool値を返すメソッドです。構文UInt16.Equals()メソッドには、以下の2種類の構文があります。public override bool Equals (object ob); public bool Equals (ushort ob);1つ目の構文のパラメータobは、このインスタンスと比較する対象のオブジェクトです。2つ目の構文のパラメータobは、このインスタンスと比較する16ビット符号なし整数(ushort)です。戻り値

  2. C#のUInt16.CompareTo()メソッドの使い方をサンプルコード付きで解説

    C#のUInt16.CompareTo()メソッドは、現在のインスタンスと指定されたオブジェクトまたはUInt16値を比較し、両者の相対的な大小関係を示す整数値を返します。数値の大小判定やソート処理などで活用できる便利なメソッドです。 構文 UInt16.CompareTo()メソッドの構文は以下の2種類があります。 public int CompareTo (object val); public int CompareTo (ushort val); 1つ目の構文では、比較対象として任意のオブジェクトを引数に指定します。2つ目の構文では、比較対象として符号なし整数(ushort)を直接指定