浅谈Swift中forca的使⽤!
⼩⽩第⼀次写⽂章,望⼤神们多指点指点!
江畔独步寻花全诗因为⾃⼰使⽤过JAVA的反射机制,因此在使⽤swift的时候也想使⽤swift的反射机制时,在⼀个⼤神的⽂章⾥⾯意外的碰到了swift的⼀种特殊的写法,因为⼀直没有碰到过swift的这种写法,⼀直不理解这种写法的意思是什么。
let ur = Urs(urInfo:urInfo!)
let mirror = Mirror(reflecting: ur)
let children = mirror.children
for ca let (label?, value) in children {
}
两种电荷然后⾃⼰百度了⼀下,或许没明⽩什么意思,没找到关键字,也没百度到,然后顺带就google了⼀下,第⼀个就跑到apple官⽅的⽂档⾥⾯去了,也就是在这⾥⾯我找到了⾃⼰想要的答案。
在这段内容⾥⾯我找到了⾃⼰想知道的内容。
大王洞
当我使⽤for ca in去循环children的时候,循环语句就会去匹配我们所设置的条件,label?的时候,循环就只会匹配label不为空的值。当label 不设置可选值的时候,会循环出所有的内容。或许我语⾔组织的有点不好理解,当你看了我写的这个⼩的测试demo就能明⽩了。
let ints: [Int?] = [nil,nil,1,2,nil,3]自然美女
for ca let number? in ints {
故事中国
羊台山print(number)
}
这个时候输出的内容为:1、2、3档案管理制度范本
当我把number?改为number的时候,输出内容变成了:
重大通知
到这⾥我想⼤家就很明⽩这个语法的使⽤了。