swift – 关闭元组的元组元组
发布时间:2020-12-14 04:59:18 所属栏目:百科 来源:网络整理
导读:我可以轻松地构建一个元组元组: let tt = (2,(3,4))let (a,(b,c)) = ttb // = 3 在声明闭包时我想做同样的事情,例如我以为我可以写: [tt].map { (a,c)) in // Use b} XCode抱怨“未命名的参数必须用空名称写”. 我得到“工作”的唯一方法是: [tt].map { (
我可以轻松地构建一个元组元组:
let tt = (2,(3,4)) let (a,(b,c)) = tt b // => 3 在声明闭包时我想做同样的事情,例如我以为我可以写: [tt].map { (a,c)) in // Use b } XCode抱怨“未命名的参数必须用空名称写”. 我得到“工作”的唯一方法是: [tt].map { (a,tuple: (b: Int,c: Int)) in // Use tuple.b } 这有两个我想避免的缺点: >我需要使用tuple.b而不是b 顺便说一句,我的用例是我想用索引做一个reduce,所以我正在尝试使用array.enumerate(). 解决方法
使用额外的赋值行,您可以将数组中的值分配给(a,c))以解构元组:
let tt1 = (2,4)) let tt2 = (5,(6,7)) [tt1,tt2].map { tt in let (a,c)) = tt print(b) } 输出:
或者: [tt1,tt2].map { let (a,c)) = $0 print(b) } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |