C# で Float を Int に変換する

Muhammad Maisam Abbas 2024年2月16日
  1. C# で明示的な型キャストを使用して Float を Int に変換する
  2. C# の Math.Ceiling() 関数を使用して Float を Int に変換する
  3. C# の Math.Floor() 関数を使用して Float を Int に変換する
  4. C# の Math.Round() 関数を使用して Float を Int に変換する
C# で Float を Int に変換する

このチュートリアルでは、C# で float 値を整数値に変換する方法を紹介します。

C# で明示的な型キャストを使用して Float を Int に変換する

型キャストは、あるデータ型から別のデータ型に値を変換する方法です。Float データ型は、Int データ型よりも多くのバイトを取ります。したがって、明示的な型キャストを使用して、float 値を Int 値に変換する必要があります。次のコード例は、C# で明示的な型キャストを使用して float 値を整数値に変換する方法を示しています。

using System;

namespace convert_float_to_int {
  class Program {
    static void Main(string[] args) {
      float f = 10.2f;
      int i = (int)f;
      Console.WriteLine("Converted float {0} to int {1}", f, i);
    }
  }
}

出力:

Converted float 10.2 to int 10

C# で明示的な型キャストを使用して、float 変数 f を整数変数 i に変換しました。(int) は、fi にキャストするために使用されます。このアプローチの問題は、小数点以下のすべての値を無視することです。たとえば、浮動小数点値 10.9 も整数値 10 に変換されます。

C# の Math.Ceiling() 関数を使用して Float を Int に変換する

小数点以下の値を検討する場合は、明示的な型キャスト以外のアプローチを使用する必要があります。Math.Ceiling() 関数は、10 進数の値を次の整数値に変換するために使用されます。Math.Ceiling() 関数は、明示的な型キャストを使用して整数値に変換できる double 値を返します。次のコード例は、C# の Math.Ceiling() 関数を使用して float 値を整数値に変換する方法を示しています。

using System;

namespace convert_float_to_int {
  class Program {
    static void Main(string[] args) {
      float f = 10.2f;
      int i = (int)Math.Ceiling(f);
      Console.WriteLine("Converted float {0} to int {1}", f, i);
    }
  }
}

出力:

Converted float 10.8 to int 11

C# の Math.Ceiling() 関数を使用して、浮動変数 f を整数変数 i に変換しました。(int) は、Math.Ceiling() 関数によって返される double 値を整数値にキャストするために使用されます。このアプローチの問題は、常に次の整数値を返すことです。たとえば、浮動小数点値 10.1 も整数値 11 に変換されます。

C# の Math.Floor() 関数を使用して Float を Int に変換する

Math.Floor() 関数を明示的な型キャストと一緒に使用して、Float 値を C# の整数値に変換することもできます。Math.Floor() 関数は、10 進数の値を前の整数値に変換するために使用されます。Math.Floor() 関数は、明示的な型キャストを使用して整数値に変換できる double 値を返します。次のコード例は、C# の Math.Floor() 関数を使用して float 値を整数値に変換する方法を示しています。

using System;

namespace convert_float_to_int {
  class Program {
    static void Main(string[] args) {
      float f = 10.2f;
      int i = (int)Math.Floor(f);
      Console.WriteLine("Converted float {0} to int {1}", f, i);
    }
  }
}

出力:

Converted float 10.2 to int 10

C# の Math.Floor() 関数を使用して、浮動変数 f を整数変数 i に変換しました。(int) は、Math.Floor() 関数によって返される double 値を整数値にキャストするために使用されます。このアプローチの問題は、常に前の整数値を返すことです。たとえば、浮動小数点値 10.9 も整数値 10 に変換されます。

C# の Math.Round() 関数を使用して Float を Int に変換する

上記のアプローチは機能しますが、すべてのアプローチにはいくつかの欠点があります。float 値を整数値に変換したいが、データを変更したくない場合は、C# で Math.Round() 関数を使用できます。Math.Round() 関数は、その名前が示すように、10 進値を最も近い整数値に切り上げるために使用されます。Math.Round() は double 値を返します。これは、明示的な型キャストを使用して整数データ型に変換できます。次のコード例は、C# の Math.Round() 関数を使用して float 値を整数値に変換する方法を示しています。

using System;

namespace convert_float_to_int {
  class Program {
    static void Main(string[] args) {
      float f = 10.8f;
      int i = (int)Math.Round(f);
      Console.WriteLine("Converted float {0} to int {1}", f, i);
    }
  }
}

出力:

Converted float 10.8 to int 11

C# の Math.Round() 関数を使用して、浮動小数点変数 f を整数変数 i に変換しました。(int) は、Math.Round() 関数によって返される double 値を整数値にキャストするために使用されます。これは、Float 値を C# で整数値に変換するための最適なアプローチです。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

関連記事 - Csharp Float

関連記事 - Csharp Integer