顯式轉換

如果你知道某個值是特定型別,則可以顯式地將其強制轉換為該型別,以便在需要該型別的上下文中使用它。

object value = -1;
int number = (int) value;
Console.WriteLine(Math.Abs(number));

如果我們嘗試將 value 直接傳遞給 Math.Abs(),我們會得到一個編譯時異常,因為 Math.Abs() 沒有一個以 object 為引數的過載。

如果 value 不能被投射到 int,那麼這個例子中的第二行會丟擲一個 InvalidCastException