用法一
初始化器
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?<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+
用法三
初始化器
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?(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: 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?<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+
相關用法
- Swift UInt8 init(integerLiteral:)用法及代碼示例
- Swift UInt8 init(clamping:)用法及代碼示例
- Swift UInt8 init(truncatingIfNeeded:)用法及代碼示例
- Swift UInt8 init(_:radix:)用法及代碼示例
- Swift UInt8 init(_:)用法及代碼示例
- Swift UInt8 ~(_:)用法及代碼示例
- Swift UInt8 leadingZeroBitCount用法及代碼示例
- Swift UInt8 ..<(_:_:)用法及代碼示例
- Swift UInt8 *=(_:_:)用法及代碼示例
- Swift UInt8 multipliedFullWidth(by:)用法及代碼示例
- Swift UInt8 ^=(_:_:)用法及代碼示例
- Swift UInt8 *(_:_:)用法及代碼示例
- Swift UInt8 trailingZeroBitCount用法及代碼示例
- Swift UInt8 +(_:)用法及代碼示例
- Swift UInt8 >>=(_:_:)用法及代碼示例
- Swift UInt8 >>(_:_:)用法及代碼示例
- Swift UInt8 |(_:_:)用法及代碼示例
- Swift UInt8 nonzeroBitCount用法及代碼示例
- Swift UInt8 ==(_:_:)用法及代碼示例
- Swift UInt8 &-=(_:_:)用法及代碼示例
- Swift UInt8 &<<(_:_:)用法及代碼示例
- Swift UInt8 &=(_:_:)用法及代碼示例
- Swift UInt8 <<=(_:_:)用法及代碼示例
- Swift UInt8 -(_:_:)用法及代碼示例
- Swift UInt8 &(_:_:)用法及代碼示例
注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 UInt8 init(exactly:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。