gpt4 book ai didi

swift:将可选映射到数组的优雅方式

转载 作者:行者123 更新时间:2023-12-05 03:53:53 26 4
gpt4 key购买 nike

我正在寻找一种优雅的方式来映射 OptionalArray .我的意思是:

  • 如果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/

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