执行任务所需的循环语句需要重复特定的次数。

循环(For,ForEach,While,do…while)

执行任务所需的循环语句需要重复特定的次数。

假设,如果您要打印从1到10的数字,可以不执行循环操作,如下所示。

NSLog(@“ 1”);

NSLog(@“ 2”);

NSLog(@“ 3”);

NSLog(@“ 4”);

NSLog(@“ 5”);

NSLog(@“ 6”);

NSLog(@“ 7”);

NSLog(@“ 8”);

NSLog(@“ 9”);

NSLog(@“ 10”);

在这里,您要编写10次NSLog语句以打印从1到10的数字。这里可能出现循环,因此您可以执行重复的任务而无需多次编写相同的代码。

为循环

For循环的语法

for(初始化器;条件表达式;循环表达式)

{

//要执行的语句

}

使用For循环打印1到10之间的数字

对于(int i = 1; i <= 10; i ++)

{

NSLog(@”%d”,i);

}

输出

第一次i = 1,因此它将打印1并将i值增加+1

第二次i = 2,因此它将打印2并将i值增加+1。

当i值达到10时,它将打印10并将i的值增加1,因此i为11,11 <= 10将不被满足,循环将中断。

让我们看看如何使用FOR LOOP打印数组的所有元素

NSMutableArray * arrCities = [NSMutableArray arrayWithObjects:@“孟买”,@“德里”,@“艾哈迈达巴德”,无];

为(int i = 0; i <arrCities.count; i ++)

{

NSLog(@“%@”,[arrCities objectAtIndex:i]);

}

输出

当第一次执行循环时,i = 0,则它将打印孟买

然后我= 1,它将打印德里

在上一个i = 2中,它将打印艾哈迈达巴德

FOREACH LOOP :它们可以用于一对一地获取NSArray,NSDictionary(对键进行迭代),NSSet等的所有元素。

让我们使用foreach循环重写上述for循环,并从数组中获取所有元素。

用于(arrCities中的NSString * strCityName)

{

NSLog(@“%@”,strCityName);

}

枚举 :它们可以用来一一读取NSArray,NSDictionary,NSSet等的所有元素。 检查以下示例。

NSMutableArray * arrCities = [NSMutableArray arrayWithObjects:@“孟买”,@“德里”,@“艾哈迈达巴德”,无];

[arrCities enumerateObjectsUsingBlock:^(id _Nonnull obj,NSUInteger idx,BOOL * _Nonnull stop){

NSLog(@“%lu的城市为%@”,(unsigned long)idx,obj);

}];

这里

obj =数组中的对象

idx =数组索引

stop =用于停止或中断枚举或循环(如果* stop = YES,则循环将终止)

输出:

孟买

新德里

艾哈迈达巴德

WHILE LOOP:只要给定条件为true,while循环语句就会重复执行一条语句。 while循环的语法如下。

while(条件)

{

声明;

}

int i = 1;

而(我<10)

{

NSLog(@“%d”,i);

i ++;

}

输出 :它将打印从1到9的数字

DO WHILE LOOP: do … while循环与while循环类似,不同之处在于,do … while循环可确保至少执行一次语句。

整数a = 10;

{

NSLog(@“%d”,a);

a = a + 1;

} while(a <20);

输出 :它将打印从10到19的数字

BREAK:当我们的需要满足时,如果满足特定条件,则循环中的Break语句对于终止循环语句的执行很有用。

例如:在给定的城市阵列中,当我们要查找德里时,一旦找到,则停止执行循环。 程序为此

NSMutableArray * arrCities = [NSMutableArray arrayWithObjects:@“孟买”,@“德里”,@“艾哈迈达巴德”,无];

为(int i = 0; i <arrCities.count; i ++)

{

NSLog(@“%@”,[arrCities objectAtIndex:i]);

NSString * strCity = [arrCities objectAtIndex:i];

如果([strCity isEqualToString:@” Delhi”])

{

打破;

}

}

输出孟买

继续 :用Objective-C编程语言编写的continue语句的工作原理与break语句类似。 但是,continue不会强制终止,而是会强制执行循环的下一次迭代,从而跳过两者之间的任何代码。 Continue语句的语法如下。

NSMutableArray * arrCities = [NSMutableArray arrayWithObjects:@“孟买”,@“德里”,@“艾哈迈达巴德”,无];

为(int i = 0; i <arrCities.count; i ++)

{

NSString * strCity = [arrCities objectAtIndex:i];

如果([strCity isEqualToString:@” Delhi”])

{

继续;

}

NSLog(@“%@”,[arrCities objectAtIndex:i]);

}

在这里,德里不会在控制台中打印。

所以输出如下

孟买

艾哈迈达巴德

希望您了解Loops及其用法。

谢谢您阅读🙂

请查看我的YouTube频道以获取视频教程并订阅,并与您的朋友分享。

youtube频道链接: https : //www.youtube.com/channel/UCWjT8XgKescscxlPbMSVzbQ