当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


Swift LosslessStringConvertible init(_:)用法及代码示例

用法一

初始化器

init(_:)

从给定的字符串创建一个新的整数值。

声明

init?(_ description: String)

参数

description

数字的 ASCII 表示。

详述

作为description 传递的字符串可以以加号或减号字符(+-)开头,后跟一个或多个数字(0-9)。


let x = Int("123")
// x == 123

如果 description 的格式无效,或者它以 10 为基数表示的值不可表示,则结果为 nil 。例如,以下转换导致 nil


Int(" 100")                       // Includes whitespace
Int("21-50")                      // Invalid format
Int("ff6600")                     // Characters out of bounds
Int("10000000000000000000000000") // Out of range

可用版本

iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+

用法二

初始化器

init(_:)

从给定的浮点值创建一个整数,向零舍入。作为 source 传递的值的任何小数部分都将被删除。

声明

init<T>(_ source: T) where T : BinaryFloatingPoint

参数

source

要转换为整数的浮点值。 source 在向零舍入后必须可以在此类型中表示。

详述


let x = Int(21.5)
// x == 21
let y = Int(-21.5)
// y == -21

如果 source 在向零舍入后超出此类型的范围,则可能会发生运行时错误。


let z = UInt(-21.5)
// Error: ...outside the representable range

可用版本

iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+

相关用法


注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 LosslessStringConvertible init(_:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。