加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

从swift 3迁移到swift 4 – 无法将String转换为期望的String.Ele

发布时间:2020-12-14 05:24:31 所属栏目:百科 来源:网络整理
导读:我将我的代码从 swift 3转换为 swift 4并在以下代码中获取此错误.即使我尝试使用flatmap来压平数组,我也会得到这个 Cannot convert value of type ‘String’ to expected argument type ‘String.Element’ (aka ‘Character’) if favoritedProducts.conta
我将我的代码从 swift 3转换为 swift 4并在以下代码中获取此错误.即使我尝试使用flatmap来压平数组,我也会得到这个

Cannot convert value of type ‘String’ to expected argument type
‘String.Element’ (aka ‘Character’)

if favoritedProducts.contains("helloWorld") {}

下面的代码行不返回[String]而是返回'[String.Element]’如何将其转换为[String].如果我尝试将其转换为[String],它会说它总会失败.

let productIDs = allItems.flatMap{$0.productID}
如果您的Item类型具有类似String的非可选productID属性,请执行此操作
struct Item {
    let productID: String
}

你有一个项目数组

let allItems: [Item] = ...

然后,您可以使用map方法获取productID(s)数组

let productIDs = allItems.map { $0.productID }

现在productIDs是[String].

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读