当前位置:网站首页>For循环控制
For循环控制
2022-08-04 15:30:00 【Hyf 。】
目录
Scala也为for循环这一常见的控制结构提供了非常多的特性,这些for循环的特性被称为推导式或for表达式。
注意 //在Scala中对象的方法调用我们可以省略点,只要之间空一格就可以了 // 然后后面空一格再写参数,如果参数只有一个的话,括号也可以省略
范围数据循环(To)
范围遍历
基本语法
for( i <- 1 to 6 ) {
print(i + " " )
}
println()
说明:
(1)i 表示循环的变量,<- 规定to
(2)i 将会从1-6循环,前后闭合
案例实操
package Chapter04
object Test_02ForLoop {
def main(args: Array[String]): Unit = {
//for循环控制(to)
for (i <- 1 to 9){
println("第"+i+"句"+"中国我爱你")
}
//for(i <- 1.to(9)){
//println("第"+i+"句我爱你中国")
//}
}
}运行结果

范围数据循环(until)
不包含边界的范围遍历
基本语法
for( i <- 1 until 3 ) {
print(i + " " )
}
println()
说明:
(1)这种方式和前面的区别在于 i 是从 1 到 3-1
(2)即使前闭合后开的范围
案例实操
package Chapter04
object Test_02ForLoop {
def main(args: Array[String]): Unit = {
//不包含边界的范围遍历
for(i <- Range(1,10)){
println(i+".Hello")
}
println("-----------")
for(i <- 1 until 10){
println(i+".Hello")
}
}
}运行结果

集合遍历
案例实操
package Chapter04
object Test_02ForLoop {
def main(args: Array[String]): Unit = {
//集合遍历
for(i <- Array(2022, 520,1314)){
println(i)
}
println("---")
for(i <- List(2022, 520,1314)){
println(i)
}
println("---")
for(i <- Set(2022, 520,1314)){
println(i)
}
}
}运行结果

循环守卫
基本语法
for( i <- 1 to 3 if i !=2) {
print(i + " " )
}
println()
说明:
(1)循环守卫,即循环保护式(也称条件判断式,守卫)。保护式为true则进入循环体内部,为false则跳过,类似于continue。
(2)上面的代码等价
for( i <- 1 to 3) {
if (i !=2 ){
print(i + " " )
}
}
案例实操
package Chapter04
object Test_02ForLoop {
def main(args: Array[String]): Unit = {
//循环守卫
for(i<- 1 to 3 if i !=2 ){
println("第"+i+"句"+".我爱你中国")
}
println("----")
for(i<- 1 to 3) {
if (i != 2) {
println("第" + i + "句" + ".我爱你中国")
}
}
}
}运行结果

边栏推荐
猜你喜欢

我说MySQL联合索引遵循最左前缀匹配原则,面试官让我回去等通知
MySQL当前读、快照读、MVCC

Redis-哨兵模式

程序猿七夕礼物-如何30分钟给女朋友快速搭建专属语聊房

JCMsuite Application: Oblique Plane Wave Propagation Transmission Through Aperture

李沐的深度学习笔记来了!

ICDE‘22推荐系统论文之Research篇

分布式链路追踪Jaeger + 微服务Pig在Rainbond上的实践分享

西安纵横资讯×JNPF:适配中国企业特色,全面集成费用管控体系

Online Excel based on Next.js
随机推荐
Manacher(求解最长回文子串)
Byte、Short、Integer、Long内部缓存类的对比与源码分析
Redis-主从复制
365天挑战LeetCode1000题——Day 049 非递增顺序的最小子序列 贪心
Latex 去掉行号
附加:自定义注解(参数校验注解);(写的不好,别看…)
我说MySQL联合索引遵循最左前缀匹配原则,面试官让我回去等通知
保证通信的机制有哪些
Why, when you added a unique index or create duplicate data?
JVM调优-GC基本原理和调优关键分析
Go 言 Go 语,一文看懂 Go 语言文件操作
【Harmony OS】【FAQ】Hongmeng Questions Collection 2
QT笔记——Q_INVOKABLE了解
(2022杭电多校五)C - Slipper (dijkstra+虚拟结点)
Codeforces Round #811 A~F
Codeforces Round #811 A~F
IP第十八天笔记
IP第十六天笔记
Resharper 如何把类里的类移动到其他文件
Pisanix v0.2.0 发布|新增动态读写分离支持