-1

目前我有一个使用 bam 运算符的代码片段,但它需要被解包:

 if let tagIds = location.tagIds, !filterSet.matchesTags(tagIds as! [String]) {
            return false
        }

我尝试使用警卫:

  guard  let tagIds = location.tagIds, let tapgIdsString = tagIds as? [String] else {return}, !filterSet.matchesTags(tapgIdsString) {
            return false
        }

但它会导致错误,“非 void 函数应该返回一个值”

4

1 回答 1

0

在不知道如何声明所有内容的情况下很难回答,但听起来你可以说

if let tagIds = location.tagIds as? [String], !filterSet.matchesTags(tagIds)
于 2020-07-09T17:29:57.840 回答