用法一
初始化器
init(exactly:)
如果可以精確表示,則從給定的浮點值創建一個整數。
聲明
init?(exactly source: Float80)
參數
source
要轉換為整數的浮點值。
詳述
如果作為 source
傳遞的值不能準確表示,則結果為 nil
。在以下示例中,常量 x
是從 21.0
值成功創建的,而嘗試從 21.5
初始化常量 y
失敗:
let x = Int(exactly: 21.0)
// x == Optional(21)
let y = Int(exactly: 21.5)
// y == nil
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
用法二
初始化器
init(exactly:)
如果可以精確表示,則從給定的浮點值創建一個整數。
聲明
init?(exactly source: Float16)
參數
source
要轉換為整數的浮點值。
詳述
如果作為 source
傳遞的值不能準確表示,則結果為 nil
。在以下示例中,常量 x
是從 21.0
值成功創建的,而嘗試從 21.5
初始化常量 y
失敗:
let x = Int(exactly: 21.0)
// x == Optional(21)
let y = Int(exactly: 21.5)
// y == nil
可用版本
iOS 14.0+, iPadOS 14.0+, macOS 11.0+, Mac Catalyst 14.0+, tvOS 14.0+, watchOS 7.0+
用法三
初始化器
init(exactly:)
如果可以精確表示,則從給定的浮點值創建一個整數。
聲明
init?(exactly source: Double)
參數
source
要轉換為整數的浮點值。
詳述
如果作為 source
傳遞的值不能準確表示,則結果為 nil
。在以下示例中,常量 x
是從 21.0
值成功創建的,而嘗試從 21.5
初始化常量 y
失敗:
let x = Int(exactly: 21.0)
// x == Optional(21)
let y = Int(exactly: 21.5)
// y == nil
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
用法四
初始化器
init(exactly:)
如果可以精確表示,則從給定的浮點值創建一個整數。
聲明
init?(exactly source: Float)
參數
source
要轉換為整數的浮點值。
詳述
如果作為 source
傳遞的值不能準確表示,則結果為 nil
。在以下示例中,常量 x
是從 21.0
值成功創建的,而嘗試從 21.5
初始化常量 y
失敗:
let x = Int(exactly: 21.0)
// x == Optional(21)
let y = Int(exactly: 21.5)
// y == nil
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
用法五
初始化器
init(exactly:)
如果可以精確表示,則從給定的浮點值創建一個整數。
聲明
init?<T>(exactly source: T) where T : BinaryFloatingPoint
參數
source
要轉換為整數的浮點值。
詳述
如果作為 source
傳遞的值不能準確表示,則結果為 nil
。在以下示例中,常量 x
是從 21.0
值成功創建的,而嘗試從 21.5
初始化常量 y
失敗:
let x = Int(exactly: 21.0)
// x == Optional(21)
let y = Int(exactly: 21.5)
// y == nil
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
用法六
初始化器
init(exactly:)
如果可以精確表示,則從給定的整數創建一個新實例。
聲明
init?<T>(exactly source: T) where T : BinaryInteger
當
Self
符合 FixedWidthInteger
時可用。參數
source
要轉換為此類整數的值。
詳述
如果作為 source
傳遞的值不能準確表示,則結果為 nil
。在以下示例中,常量 x
是從值 100
成功創建的,而嘗試從 1_000
初始化常量 y
失敗,因為 Int8
類型最多可以表示 127
:
let x = Int8(exactly: 100)
// x == Optional(100)
let y = Int8(exactly: 1_000)
// y == nil
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
相關用法
- Swift Int init(clamping:)用法及代碼示例
- Swift Int init(truncatingIfNeeded:)用法及代碼示例
- Swift Int init(_:radix:)用法及代碼示例
- Swift Int init(_:)用法及代碼示例
- Swift Int init(integerLiteral:)用法及代碼示例
- Swift Int >>=(_:_:)用法及代碼示例
- Swift Int &>>=(_:_:)用法及代碼示例
- Swift Int *=(_:_:)用法及代碼示例
- Swift Int ^(_:_:)用法及代碼示例
- Swift Int &-(_:_:)用法及代碼示例
- Swift Int |(_:_:)用法及代碼示例
- Swift Int &=(_:_:)用法及代碼示例
- Swift Int <<(_:_:)用法及代碼示例
- Swift Int +(_:)用法及代碼示例
- Swift Int >>(_:_:)用法及代碼示例
- Swift Int ..<(_:)用法及代碼示例
- Swift Int /=(_:_:)用法及代碼示例
- Swift Int multipliedFullWidth(by:)用法及代碼示例
- Swift Int -(_:_:)用法及代碼示例
- Swift Int ...(_:_:)用法及代碼示例
- Swift Int &*=(_:_:)用法及代碼示例
- Swift Int &(_:_:)用法及代碼示例
- Swift Int /(_:_:)用法及代碼示例
- Swift Int ...(_:)用法及代碼示例
- Swift Int ..<(_:_:)用法及代碼示例
注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 Int init(exactly:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。