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

C#のInt32.MaxValueフィールドとは?使い方とサンプルコードで解説

C#のInt32.MaxValueフィールドは、Int32型(32ビット符号付き整数)が表現できる最大値を表す定数です。その値は2,147,483,647であり、int型の変数に格納できる上限を確認したい場合や、数値変換時に範囲チェックを行いたい場合などに活用できます。

構文

Int32.MaxValueフィールドの構文は以下の通りです。

public const int MaxValue = 2147483647;

基本的な使用例

まず、Int32.MaxValueフィールドの基本的な使い方を見てみましょう。以下の例では、int型の値のハッシュコードやTypeCodeを確認するとともに、Int32.MaxValueの値を出力しています。

using System;
public class Demo {
   public static void Main(){
      int val1 = 23;
      int val2 = 23;
      Console.WriteLine("Value1 = "+val1);
      Console.WriteLine("Value2 = "+val2);
      Console.WriteLine("HashCode for value1 = "+val1.GetHashCode());
      Console.WriteLine("HashCode for value2 = "+val2.GetHashCode());
      Console.WriteLine("Are they equal? = "+(val1.Equals(val2)));
      TypeCode type1 = val1.GetTypeCode();
      TypeCode type2 = val2.GetTypeCode();
      Console.WriteLine("TypeCode for val1 = "+type1);
      Console.WriteLine("TypeCode for val2 = "+type2);
      Console.WriteLine("Maximum Value = "+ Int32.MaxValue);
   }
}

出力結果

上記のコードを実行すると、次のような出力が得られます。

Value1 = 23
Value2 = 23
HashCode for value1 = 23
HashCode for value2 = 23
Are they equal? = True
TypeCode for val1 = Int32
TypeCode for val2 = Int32
Maximum Value = 2147483647

実践的な使用例:long型からint型への変換チェック

Int32.MaxValueは、より大きなデータ型からint型へ変換する際の範囲チェックにも役立ちます。次の例では、long型の配列の各要素がInt32.MinValue~Int32.MaxValueの範囲内にあるかどうかを判定し、変換可能な場合のみConvert.ToInt32メソッドで変換しています。

using System;
public class Demo {
   public static void Main(){
      long[]val = {8998, -899898778, 8787867687878, -20};
      int res;
      foreach(long a in val){
         if(a >= Int32.MinValue && a <= Int32.MaxValue){
            res = Convert.ToInt32(a);
            Console.WriteLine("Converted: "+res);
         }
         else{
            Console.WriteLine("Not Possible");
         }
      }
   }
}

出力結果

このコードを実行すると、範囲外の値に対しては変換が行われず、適切なメッセージが出力されます。

Converted: 8998
Converted: -899898778
Not Possible
Converted: -20

まとめ

Int32.MaxValueフィールドを使用することで、int型が扱える最大値をハードコーディングせずに安全に参照できます。特に、大きな数値型からの変換処理では、オーバーフローを防ぐための事前チェックとして活用することをおすすめします。同様に、最小値を表すInt32.MinValueフィールドと組み合わせることで、より堅牢な数値処理を実現できます。

  1. C#のUInt32.MaxValueフィールドとは?使い方を実例付きで解説

    C#におけるUInt32.MaxValueフィールドは、32ビット符号なし整数(uint型)が取り得る最大値を表す定数です。その値は「4294967295」であり、範囲チェックやデータ型変換など、さまざまな場面で活用できます。この記事では、UInt32.MaxValueの構文と具体的な使用例をわかりやすく紹介します。構文UInt32.MaxValueフィールドの構文は以下のとおりです。public const uint MaxValue = 4294967295;例1:UInt32.MaxValueの基本的な使い方まずは、uint型の変数に対してハッシュコードの取得、等価比較、TypeCode

  2. C#のUInt16.MaxValueフィールドとは?使い方を例付きで解説

    C#におけるUInt16.MaxValueフィールドは、16ビット符号なし整数(ushort型)が取り得る最大値を表す定数です。値の範囲チェックや変換処理などで頻繁に活用されます。構文UInt16.MaxValueフィールドの構文は以下のとおりです。public const ushort MaxValue = 65535;このように、MaxValueは定数(const)として定義されており、その値は常に65535です。ushort型は0〜65535の範囲の値を扱えるため、最大値が65535となります。使用例1:基本的なプロパティの確認まず、UInt16.MaxValueフィールドを使った基本的