gpt4 book ai didi

ios - 如何将 `Int8?` 转换为 `Int?` ?

转载 作者:行者123 更新时间:2023-11-28 19:25:12 26 4
gpt4 key购买 nike

我有一个名为 secondsUInt8? 变量,我需要将其传递给接受 Int? 的函数。

这导致无法将类型 UInt8? 的值转换为预期的参数类型 Int?

这意味着我必须进行转换,所以我尝试了显而易见的方法:

Int?(seconds)

但这会导致:UInt8? 无法转换为 Int

当然可以:

(seconds == nil) ? nil : Int(seconds!)

但是卧槽,真的有必要这么做作吗?

最佳答案

您的类型是 Optional<UInt8> . UInt8总是可以转换为 Int使用函数 Int.init .但是因为它被包裹在 Optional 中,您必须将该函数映射到可选的,产生类型为 Optional<Int> 的新值:

seconds.map(Int.init)

Optional.map(_:) 及其同伴 flatMap 通常使使用可选值变得容易得多。

关于ios - 如何将 `Int8?` 转换为 `Int?` ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59446398/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com