顯式轉換
如果你知道某個值是特定型別,則可以顯式地將其強制轉換為該型別,以便在需要該型別的上下文中使用它。
object value = -1;
int number = (int) value;
Console.WriteLine(Math.Abs(number));
如果我們嘗試將 value
直接傳遞給 Math.Abs()
,我們會得到一個編譯時異常,因為 Math.Abs()
沒有一個以 object
為引數的過載。
如果 value
不能被投射到 int
,那麼這個例子中的第二行會丟擲一個 InvalidCastException