scala中的基本控制結構有順序、條件和迴圈三種方式,這個和其他的jvm語言是一致的,但是scala也有一些高階的流程控制結構類模式匹配。
1、程式**:
package com.dtspark.scala.basic
object controlstructures else
0println(result4)
for(i<-0 to5
if i==2)
var flag=true
var sum=0
for(i<-0 to6
if flag)
println("sum="+sum)
sum=0
/* for(i<-0 to 6)
println("sum with return="+sum)*/
for(item<-"hello spark") println(item)
import scala.util.control.breaks._
flag=true
breakable}}
} println("while finished!!!")
}}
2、語法說明
for語句,for迴圈是不斷的迴圈乙個集合,然後根據for迴圈後面的**部分會根據for迴圈(…)裡面提取的,集合的item來作為的輸入程序流程控制.
1.for迴圈中加入的if叫做條件守衛,用於限制for迴圈(優化for迴圈,去掉不必要的執行步驟,或者說用於跳出for迴圈)
2.在for迴圈中能夠提取出什麼內容取決於後面集合的型別
3.想跳出for迴圈除了加入if守衛以外,還可以使用return關鍵字
while迴圈,也是迴圈集合來作為的輸入,進而完成流程的控制的,while迴圈在實際,server和framework開發中至關重要,例如讓乙個執行緒一直迴圈下去,一般都會使用while
Scala學習(二 控制結構)
1 if語句,整體和c 一樣,我寫一點可能大家不太熟悉的東西。object helloworld 2 終止語句 單行多個語句 var x 1 x x 1需要加乙個 多行單個語句 var x 1 2 這裡用 這種運算子結尾 3 塊表示式,在 裡面的表示式 import scala.math.sqrt ...
scala基礎 控制結構和函式
這兩周專案提測與上線,好久沒寫scala的筆記了 scala中幾乎構造的所有語法結構都有值 1 scala中if表示式也是有值的 2 塊中最後乙個達式的值就是該塊的值 3 scala中的unit等價於c c 語言中常用的void 4 scala中每個表示式都有乙個型別 5 if a 0 positi...
scala基礎語法
一 變數定義 1 val 定義的變數值不可以修改 2 var 定義的變數值可以修改 二 一些變數型別 1 unit 表示不返回任何結果方法的結果型別,相當於void 2 null null 空引用 3 nothing 任何其他類的子型別 4 any 所有其他類的父類 5 anyref 所有引用類的基...