scala if
scala中的if结构与Java相差不大,但是与java不同的是,scala中的if表达式的值可以赋给变量
scala for
for( 变量 <- 表达式 ) { 语句块 }
- 不希望打印出所有的结果,过滤出一些满足条件的结果,需要使用到“守卫(guard)” 例子如下:
for( i <- 1 to 5 if i % 2 == 0) println(i)
此例子中if语句充当守卫的角色
2.多重循环,可以用分号隔开,例子如下
for( i<- 1 to 5 ; j <- 1 to 3) println( i*j )
3.for推到式
scala 的for结构可以在每次执行的时候创造一个值,然后将包含了所有产生值的集合作为for循环表达式的结果返回,集合的类型由生 成器中的集合类型确定
同过for循环遍历一个与多个集合,对集合中的元素进行“推到”,从而计算得到新的集合,用于后续的计算
for( 变量 <- 表达式) yield { 语句块 }
如:
val r = for( i <- 1 to 5) yield { println(i) ; i }
上例中产生一个i的集合