as?¶
as?
虛擬方法與 as
類似,差別在於當型別不符時,它會回傳 nil
而不是拋出例外。它也不能用於在指標型別和其他型別之間進行轉換。
範例
value = rand < 0.5 ? -3 : nil
result = value.as?(Int32) || 10
value.as?(Int32).try &.abs
as?
虛擬方法與 as
類似,差別在於當型別不符時,它會回傳 nil
而不是拋出例外。它也不能用於在指標型別和其他型別之間進行轉換。
範例
value = rand < 0.5 ? -3 : nil
result = value.as?(Int32) || 10
value.as?(Int32).try &.abs