作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在寻找一种优雅的方式来映射 Optional
到Array
.我的意思是:
Optional
是.none
,返回一个空的 Array<Wrapped>
Optional
是.some
, 返回单个元素 Array<Wrapped>
现在可以这样做了
let seq = value.map { [$0] } ?? []
不幸的是,当您想内联使用它时,这会变得非常难看和难以辨认。
是否有更好的方法来完成此操作,而无需编写 extension
?
最佳答案
如何将您的可选项放入一个数组中,然后 compactMap
该数组具有恒等函数?
[yourOptional].compactMap { $0 }
正如 Martin R 所建议的,您可以使用 CollectionOfOne
来保存一次性数组的创建,代价是多写几个字符:
CollectionOfOne(yourOptional).compactMap { $0 }
关于swift:将可选映射到数组的优雅方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61443814/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!