1 三個基本的迴圈表示式
scala> 1 to 10
res0: scala.collection.immutable.range.inclusive = range(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
scala> 1.to(10)
res1: scala.collection.immutable.range.inclusive = range(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
scala> 1 until 10
res2: scala.collection.immutable.range = range(1, 2, 3, 4, 5, 6, 7, 8, 9)
2 for迴圈簡單應用
scala> for(i<-1 to 10)
1 2 3 4 5 6 7 8 9 10
定義陣列,並輸出
scala> val arr=array("one",34.5,"three")
arr: array[any] = array(one, 34.5, three)
scala> for(i<-arr)
one 34.5 three
3 巢狀尋迴圈
if後的表示式為推導
scala> for(i<-1 to 3;j<-7 to 9 if(i!=j)) print("i="+i+",j="+j+"\t")
i=1,j=7 i=1,j=8 i=1,j=9 i=2,j=7 i=2,j=8 i=2,j=9 i=3,j=7 i=3,j=8 i=3,j=9
4 yield將值封裝到集合中
scala> val res=for(i<-1 until 10) yield i
res: scala.collection.immutable.indexedseq[int] = vector(1, 2, 3, 4, 5, 6, 7, 8, 9)
scala> println(res)
vector(1, 2, 3, 4, 5, 6, 7, 8, 9)
5 scala中定義方法
scala> def mod(x:int,y:int):int=x+y
mod: (x: int, y: int)int
呼叫方法
scala> val res=mod(8,99)
res: int = 107
6 scala中定義函式
scala> val res=(x:int,y:int)=>x+y
res: (int, int) => int =
呼叫函式
scala> val z=res(9,6)
z: int = 15
7 將函式當作方法的引數進行傳遞
定義方法mod2,並傳遞乙個函式f作為方法的引數
scala> def mod2(f:(int,int)=>int)=f(3,4)
mod2: (f: (int, int) => int)int
定義乙個有兩個引數的函式
scala> val fun=(x:int,y:int)=>x*y
fun: (int, int) => int =
呼叫方法mod2並把定義好的函式fun作為引數進行傳遞,返回結果
scala> val x=mod2(fun)
x: int = 12
8 將方法轉換成函式
定義方法
scala> def mod(x:int,y:int):int=x-y
mod: (x: int, y: int)int
注意:將方法mod轉換成函式時,方法名後與_之間有乙個空格
scala> val fun=mod _
fun: (int, int) => int =
呼叫轉換後的函式
scala> fun(9,86)
res1: int = -77
第三章 while迴圈
1 while迴圈就是讓執行的 按照指定的次數重複執行。2 while語句以及縮排部分是乙個完整的 塊。3 運算子 4 在編寫程式時,除特殊要求,否則迴圈的計數從0開始。5 eg 計算 0 100 之間所有數字的累計求和結果 result 0 i 0 while i 100 print i resu...
scala學習第三章陣列相關操作
val b new arraybuffer int 或者 new arraybuffer int b 1 arraybuffer 1 用 在尾端新增元素 b 1,2,3,5 arraybuffer 1,1,2,3,5 在尾端新增多個元素 b array 1,2,3 arraybuffer 1,1,2...
第三章 從迴圈到網路
include include stdlib.h define n 64 define tpb 32 每個執行緒塊包含32個執行緒 device float scale int i,int n device float distance float x1,float x2 global void d...