1. 程式人生 > >Scala之for迴圈和函式進階

Scala之for迴圈和函式進階

1、for迴圈

 //for迴圈
    for(i <- 1 to 2; j<- 1 to 2){
      print(100*i+j + "  ");
    }
    println();
    //for迴圈
     for(i <- 1 to 2; j<- 1 to 2 if i!=j){
      print(100*i+j + "  ");
    }
結果如下:
101  102  201  202  
102  201  
2、簡單函式定義
 //函式
     def add(x:Int)=x+100;
     val add2=(x:Int)=>x+200;
     println("the add result:" + add(8));
     println("the add2 result:" + add2(8));
結果如下:
the add result:108
the add2 result:208
3、函式返回值
 //返回值型別
     def fac(n:Int):Int = {if(n<=0) 1 else n*fac(n-1);}
     println("the fac result:" + fac(5));
結果如下:
the fac result:120

4、函式預設值
 //預設值
     def combine(content:String,left:String="[",right:String="]")=left + content + right;
     println(combine("scala"));
結果如下:
[scala]

5、函式可變引數
    //可變引數
     def variableFunc(args:Int*)={
       var result = 0;
       for(arg<-args)
         result += arg;
       result;
     }
     println("the result is :" + variableFunc(1,2,3,4,5));
結果如下:
the result is :15