Convert.ToInt32

Convert.ToInt32で、さまざまなオブジェクトをInt32(int)に変換できる。

Convert.ToInt32 メソッド (System) | Microsoft Learn

// 名前空間の登録
using System;       // 共通データ型と基本クラス(System名前空間)

// メインクラス
class MainClass // MainClassクラスの定義
{

    // メインメソッド
    static void Main()  // Mainメソッドの定義
    {

        // intをobjectを経由してintに戻す.
        int i = 10;
        int j;
        object o;
        o = i;
        j = (int)o; // 明示的なキャストが必要.
        System.Console.WriteLine("i = " + i);
        System.Console.WriteLine("o = " + o);
        System.Console.WriteLine("j = " + j);

        // longをobjectを経由してintにする.
        long k = 20L;
        o = k;
        j = (int)o; // 明示的なキャストをしてみるが...
        System.Console.WriteLine("k = " + k);
        System.Console.WriteLine("o = " + o);
        System.Console.WriteLine("j = " + j);

    }

}

上のようにintをobjectに入れて再びintに戻すような場合はキャストで変換できるが、下のようにlongからobjectを経てintのように型が変わる場合、

例外が起きる。
例外が起きる。

例外が起きる。
Convert.ToInt32を使って、

こうすると、

ビルド通ってこうなる。
ビルド通ってこうなる。

ビルド通ってこうなる。

Sample/dotnet/Convert/ToInt32/src/Convert at master · bg1bgst333/Sample · GitHub