ios - 在 Swift 4 中展开 inout 参数的可选值
问题描述
假设我有一个带有 inout 参数的函数:
func foo(param: inout Int?) {
//I want to convert param to Int here without using return
}
我想解开函数内的参数而不必返回它。我知道有很多方法可以解开可选,但我需要在一个函数中执行它来重用它,而不必重写类似的东西:
if let foo = someOptionalFoo {
}
在代码中多次。谢谢你。
解决方案
你可以使用Optional.map
:
let i: Int? = 3
_ = i.map { unwrapped in
//use the unwrapped value
print(unwrapped)
}
请记住,它返回一个值,因此_ =
.
推荐阅读
- android - RxJava2 | 如何处理一组可能
- spring-boot - 使用 Spring Data Rest 默认链接创建
- angular - 尽管新数据来自 websockets,但视图数据不会更新
- c# - 构建解决方案时,由于元数据错误,ccrewrite 失败,重写中止 -> 无法解析类型引用,仅在我的机器上失败
- mongodb - 从 apache 服务器到 mongodb 的反向代理
- r - 如何使用 R 为没有数据点的列插入占位符?
- django - Django CMS 中自定义菜单的顺序
- jquery - 在特定月份打开 jquery datepicker
- ios - 如何从自定义 UIView 调用 UIViewController 内的方法/动作?
- angular - 如何在角度 5 中固定命令行