网站首页 > 基础教程 正文
学习过C语言,Java语言或者C#语言的同学们知道,在循环体中可以使用continue或者break语句来控制循环的执行情况:即使用continue语句结束某一次循环而继续执行下一次循环,而使用break来结束整个循环。在R语言中可以使用next和break能够达到同样的效果,即在R中next相当于continue的功能,而R中也是使用break来结束整个循环的。下面就详细来探讨一下next和break的使用方法。
next的用法
next用于循环体中提前结束某一次循环,注意只结束遇到next时的那一次循环,即在循环体中,如果next后面还有其它语句的话,将不会被执行。其机理可以使用下面的图来说明:
也就是说,遇到next时,将提前结束了本次循环,进而判断循环条件,如果循环条件满足的话,还要进入循环体继续执行。
下面使用一个例子来说明next的具体使用方法。下面的例子是输出一个向量中的奇数。
在这个例子中,使用for循环来循环每个元素值,在循环体中,使用if来判断这个元素是否能被2整除(余数为0),如果能被2除尽,说明这个元素el就不是奇数,使用next来结束本次循环,即不执行下面的print(el)语句,但是紧接着在vec中读取下一个元素,如果该元素不能被2整除,则不会执行next,就会执行print(el),将其输出来。其在R控制台的输出结果如下:
当然,这个题目除了使用for循环外,也可以使用while或repeat来实现,有兴趣的读者,自己可以试一试。
break的用法
break用在循环体中结束整个循环,即循环体中如果遇到了break,则整个循环就结束了,而不是像next那样,只结束当次循环。其运行机理可以使用下图来表示:
从图中可以看出,当在循环体中遇到break时,直接跳出循环体,而执行循环体后面的语句,不再执行循环。下面以一个例子来说明其具体使用方法。
break使用的例子
这个例子是循环找出1000以内能被5整除的数,并将其输出,如果这样的数超过了10个,则结束循环。其程序代码如下图所示:
图中给出了详细的注释,这里对其不再进行解释,其在R控制台中的运行结果如下图所示:
同样,这个算法也可以使用for循环或者repeat循环来实现,感兴趣的读者可以自己亲手试一试。
关于next和break的用法就说到这里,不知道你是否清楚了,如果有什么问题欢迎给我留言交流。
欢迎您关注本号,本号近期会一直更新R语言方面的文章,内容由浅入深,并且遵循内容的逻辑顺序,如果你是R的初学者,你只需要每天抽出几分钟阅读我每天更新的文章,就可以快速步入R的大门,带你共同体验R进行数据分析的快乐。同时,本号会提供R的相关资源,欢迎关注。
猜你喜欢
- 2024-10-12 340.C# 中最有价值的语法糖及其应用场景
- 2024-10-12 Dev——手把手教你学会CheckedListBox(C#)
- 2024-10-12 流程控制-循环语句(5-5)-C#编程零基础到入门学习
- 2024-10-12 C#12那些有意思的特性 c# 特性的实现原理
- 2024-10-12 C#得到网关和DNS地址 .netcore 网关
- 2024-10-12 C#设计模式之4-原型模式 c++原型模式
- 2024-10-12 C#05(判断、循环语句) c#循环次数由什么决定
- 2024-10-12 C#:编程界的全能王,其他语言只能望尘莫及?
- 2024-10-12 C# 中的模式匹配与安全的类型转换:is 和 as 运算符的深入解析
- 2024-10-12 C# 循环语句介绍 c#循环输出
- 最近发表
- 标签列表
-
- jsp (69)
- gitpush (78)
- gitreset (66)
- python字典 (67)
- dockercp (63)
- gitclone命令 (63)
- dockersave (62)
- linux命令大全 (65)
- pythonif (86)
- location.href (69)
- dockerexec (65)
- tail-f (79)
- queryselectorall (63)
- location.search (79)
- bootstrap教程 (74)
- deletesql (62)
- linuxgzip (68)
- 字符串连接 (73)
- html标签 (69)
- c++初始化列表 (64)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)