Swift 有没有更“联合”的方法来做到这一点?
在我正在创建的API中有一个.map命令,我很确定可以用更好的方式完成它 代码是:Swift 有没有更“联合”的方法来做到这一点?,swift,Swift,在我正在创建的API中有一个.map命令,我很确定可以用更好的方式完成它 代码是: .map { var myTags = [Tag]() for name in $0 { myTags.append(Tag(name: name)) } return myTags } 我可以在不创建临时变量的情况下执行此操作吗 谢谢 这与联合收割机无关,这是简单的Swift代码。 不过,您可以用一个map调用来替换它 .map { names in r
.map {
var myTags = [Tag]()
for name in $0 {
myTags.append(Tag(name: name))
}
return myTags
}
我可以在不创建临时变量的情况下执行此操作吗
谢谢 这与联合收割机无关,这是简单的Swift代码。 不过,您可以用一个map调用来替换它
.map { names in
return names.map { Tag(name: $0) }
}
甚至更短:
.map { $0.map(Tag.init) }
这与联合收割机无关,这是简单的Swift代码。 不过,您可以用一个map调用来替换它
.map { names in
return names.map { Tag(name: $0) }
}
甚至更短:
.map { $0.map(Tag.init) }
为什么$0中有一个名称?map对象是数组吗?它位于签名为:func tags->AnyPublisher的函数内{因此,是的,它是标记对象的数组。为什么$0中有for名称?map对象是数组吗?它位于签名为:func tags->AnyPublisher的函数内{所以,是的,它是一个标记对象数组。呃,DUH!谢谢你,额外的一组眼睛总是有用的!实际上可以更短:.map{$0.map{Tagname:$0}}已经有一个函数,所以你不需要创建新的闭包:.map{$0.mapTag.init}或.map{$0.map Tag.initname:}啊,废话!谢谢你,额外的一组眼睛总是有帮助的!实际上可以更短:.map{$0.map{Tagname:$0}}已经有一个函数,所以你不需要创建新的闭包:.map{$0.mapTag.init}或.map{$0.map Tag.initname:}