Swift 提供了forEach循環(huán)和forIn循環(huán):
class Car {
var carArray = ["Audi","BWM","Bench"]
func printUsingForLoop(){
for car in carArray {
print("car",car)
}
}
func printUsingForEach(){
carArray.forEach{ (car) in
print("car",car)
}
}
}
let car = Car()
car.printUsingForLoop()
print("**********************")
car.printUsingForEach()
當(dāng)用這兩種方法循環(huán)數(shù)組的時(shí)候,如果沒(méi)有其它操作,結(jié)果是一樣的:
image.png
然而,這兩個(gè)方法在使用的時(shí)候會(huì)有一些區(qū)別需要注意:
1.在 forEach循環(huán)中,你不能使用break 或者continue 跳出當(dāng)前的循環(huán),會(huì)出現(xiàn)語(yǔ)法錯(cuò)誤。而在forIn 循環(huán)中可以使用:
image.png
2.在ForIn 循環(huán)中使用return的話,會(huì)立即跳出當(dāng)前的循環(huán)體。然而在forEach中,還會(huì)繼續(xù)遍歷剩余元素。
class Car {
var carArray = ["Audi","BWM","Bench"]
func printUsingForLoop(){
for car in carArray {
print("car",car)
if(car == "Audi")
{
return
}
}
}
func printUsingForEach(){
carArray.forEach{ (car) in
print("car",car)
if(car == "Audi")
{
return
}
}
}
}
let car = Car()
car.printUsingForLoop()
print("**********************")
car.printUsingForEach()
image.png