C#のInt32構造体とは?特徴・フィールド・主なメソッドを徹底解説
C#のInt32構造体とは
Int32構造体は、32ビット符号付き整数(-2,147,483,648 ~ 2,147,483,647)を表す値型です。C#では int キーワードがこのInt32構造体に対応しており、日常的なプログラミングで最もよく使われる数値型の一つです。
Int32は不変(イミュータブル)な値型であるため、一度作成されたインスタンスの値は変更できません。値を更新する場合は、新しいインスタンスが生成されます。
Int32構造体の主なフィールド
Int32構造体には、以下の2つの定数フィールドが用意されています。
| No. | フィールドと説明 |
|---|---|
| 1 | MaxValue Int32が表現できる最大値(2,147,483,647)を表す定数です。オーバーフローチェックや範囲検証などで活用されます。 |
| 2 | MinValue Int32が表現できる最小値(-2,147,483,648)を表す定数です。こちらも範囲チェックの際によく使用されます。 |
Int32構造体の主なメソッド
Int32構造体には、比較や変換を行うための便利なメソッドが多数用意されています。代表的なメソッドは以下の通りです。
| No. | メソッドと説明 |
|---|---|
| 1 | CompareTo(Int32) 指定した32ビット符号付き整数と現在のインスタンスを比較し、その結果を示す整数を返します。戻り値は「負の値(小さい)」「0(等しい)」「正の値(大きい)」のいずれかです。 |
| 2 | CompareTo(Object) 指定したオブジェクトと現在のインスタンスを比較し、その結果を示す整数を返します。 |
| 3 | Equals(Int32) 現在のインスタンスが指定したInt32の値と等しいかどうかを示すブール値を返します。 |
| 4 | Equals(Object) 現在のインスタンスが指定したオブジェクトと等しいかどうかを示すブール値を返します。 |
| 5 | GetHashCode() 現在のインスタンスのハッシュコードを返します。ハッシュテーブルなどのコレクションで利用されます。 |
| 6 | GetTypeCode() 値型Int32のTypeCode(TypeCode.Int32)を返します。 |
| 7 | Parse(String) 数値の文字列表現を、それと等価な32ビット符号付き整数に変換します。文字列からintへの変換によく使われるメソッドです。 |
まとめ
Int32構造体は、C#における標準的な整数型であり、int の実体です。MaxValue・MinValueといった定数フィールドにより値域を簡単に確認でき、CompareToやParseなどのメソッドを使うことで、比較処理や文字列からの変換を安全かつ効率的に行えます。数値を扱うあらゆる場面で活躍する基本クラスとして、しっかり理解しておきましょう。
-
C#でStringBuilderのデフォルト値を取得する方法
C#では、default演算子を使うことで、任意の型のデフォルト値を簡単に取得できます。StringBuilderは参照型(クラス)であるため、そのデフォルト値はnullになります。以下のように、default演算子を使用してStringBuilderのデフォルト値を変数に代入できます。StringBuilder str = default(StringBuilder);ここでは、defaultキーワードを使ってデフォルト値を取得しています。なお、C# 7.1以降では型引数を省略し、単に default と記述することも可能です。サンプルコードusing System; using Syste
-
C#の値型と参照型の違いをわかりやすく解説
C#の変数は、大きく「値型(Value Type)」と「参照型(Reference Type)」の2種類に分類されます。この違いを正しく理解することは、メモリ管理やパフォーマンスの最適化において非常に重要です。それぞれの特徴を見ていきましょう。 値型(Value Type)とは 値型の変数には、データそのものが直接代入されます。すべての値型は System.ValueType クラスから派生しており、変数を宣言すると、システムはその値を格納するためのメモリを自動的に割り当てます。 値型の変数はスタック領域に格納されるという点が大きな特徴です。スタックはアクセスが高速なため、値型は効率的に動作し