退出for循环Swift iOS的迭代
我有一个函数,里面有一个for循环:退出for循环Swift iOS的迭代,ios,swift,for-loop,return,break,Ios,Swift,For Loop,Return,Break,我有一个函数,里面有一个for循环: func example() { // create tasks for link in links { let currIndex = links.indexOf(link) if let im = story_cache?.objectForKey(link) as? UIImage { if ((currIndex != nil) && (currIndex < content.count))
func example() {
// create tasks
for link in links {
let currIndex = links.indexOf(link)
if let im = story_cache?.objectForKey(link) as? UIImage {
if ((currIndex != nil) && (currIndex < content.count)) {
if (content[currIndex!].resource_type == "image") {
content[currIndex!].image = im
return
}
}
} else {
if ((currIndex != nil) && (currIndex < content.count)) {
if (content[currIndex!].resource_type == "video") {
let paths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
let documentsDirectory : NSString = paths[0]
let appFile = documentsDirectory.stringByAppendingPathComponent(content[currIndex!].id! + ".mov")
let local_URL = NSURL(fileURLWithPath: appFile)
if let cached_URL = story_cache?.objectForKey(local_URL) as? NSURL {
content[currIndex!].videoURL = cached_URL
return
}
}
}
}
let dltask = session.dataTaskWithURL(link, completionHandler: { (data, response, error) in
// MORE CODE.....
})
}
}
func示例(){
//创建任务
对于链接中的链接{
让currendex=links.indexOf(link)
如果让im=story\u缓存?.objectForKey(链接)为UIImage{
if((currendex!=nil)&(currendex
基本上,我想要实现的是,如果我们到达任何
return
语句,代码将完成对循环中这个特定链接的执行,循环将移动到下一个链接。如果没有返回语句,我希望执行dltask
。我可以使用一堆else语句来实现这一点,但我认为这会使代码变得非常混乱。使用return
是否正确?您可以使用break outer
或仅break
退出循环语句并执行dltask
希望有帮助。您正在寻找的继续:
发件人:
continue语句告诉循环停止它正在做的事情并开始
再次在循环的下一次迭代开始时。上面说
“我已完成当前循环迭代”,而不离开循环
总共
只需将return
替换为continue
,它将返回到for
循环,并使用下一个链接再次运行它