Scala 循环守卫
Posted 趣说大数据
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Scala 循环守卫相关的知识,希望对你有一定的参考价值。
取1到10之间的奇数
for (i<-(1 to 10).reverse if i%2!=0){
println(i)
}
// 1 to 10 返回一个1到10的Range序列
//(1 to 10).reverse 序列倒序
//i<-(1 to 10).reverse 步长为1从序列中以此取出一个数
// i%2!=0 当i的值为奇数时执行循环体(循环守卫)
取1到10的序列生成一个奇数序列
val array=for (i<-(1 to 10).reverse if i%2!=0) yield i*2
println(array)
//Vector(18, 14, 10, 6, 2)
小练习:
打印一个9*9的乘法表。
for(i<- 1 to 9;j<-1 to i ){
print(s"$j * $i =${j * i} \t")
if(i==j)println()
}
1 * 1 =1
1 * 2 =2 2 * 2 =4
1 * 3 =3 2 * 3 =6 3 * 3 =9
1 * 4 =4 2 * 4 =8 3 * 4 =12 4 * 4 =16
1 * 5 =5 2 * 5 =10 3 * 5 =15 4 * 5 =20 5 * 5 =25
1 * 6 =6 2 * 6 =12 3 * 6 =18 4 * 6 =24 5 * 6 =30 6 * 6 =36
1 * 7 =7 2 * 7 =14 3 * 7 =21 4 * 7 =28 5 * 7 =35 6 * 7 =42 7 * 7 =49
1 * 8 =8 2 * 8 =16 3 * 8 =24 4 * 8 =32 5 * 8 =40 6 * 8 =48 7 * 8 =56 8 * 8 =64
1 * 9 =9 2 * 9 =18 3 * 9 =27 4 * 9 =36 5 * 9 =45 6 * 9 =54 7 * 9 =63 8 * 9 =72 9 * 9 =81
以上是关于Scala 循环守卫的主要内容,如果未能解决你的问题,请参考以下文章