Scala基本語法學習

13545163656發表於2018-07-21
  1. 你好 HelloScala......

object FunctionApp {
      def main(args: Array[String]): Unit = {
       println(" HelloScala......")
       }
       
 }


2.函式/方法基本定義

object FunctionApp {
      def main(args: Array[String]): Unit = {
        // 呼叫函式
        println(add(10,5))
        sayhello()
        sayhello   //呼叫也可以不帶括號,特殊情況一定要帶括號
        //帶引數入參
        def add (x:Int ,y:Int):Int ={
          x * y
        }
        def sayhello(): Unit ={
          println("我是不帶返回值的.............")
        }
        
        
        // 特殊情況呼叫一定要帶括號
        def xm(name:String="張三" ): Unit ={
          println(name)
        }
        xm()
        xm("李四")
  }


3.條件表示式

 方法一:
  val x =100
   val a =
   if (x > 0){
         true
       }
   else{
         false
       }
  println(a)
  方法二:
  val x =100
  val a =if (x >0) true else false
  println(a)


4.迴圈方式

//左閉右閉
1 to 10 = 1.to(10)
scala.conllection.immutable.Rang.Inclusive = Rang(1,2,3.4,5,6,7,8,9,10)
//左閉右開(原始碼呼叫也是Rang方法)
1 until 10 = 1.until(10)
scala.conllection.immutable.Rang.Inclusive = Rang(1,2,3.4,5,6,7,8,9)
//左閉右開
Range(1,10)
scala.conllection.immutable.Rang.Inclusive = Rang(1,2,3.4,5,6,7,8,9)
//左閉右開,最後一位表示步長或者間隔且不能各位0
Range(1,10,3)
scala.conllection.immutable.Rang.Inclusive = Rang(1,4,7)
//IDEA 用法
for (i<- 1 to  10){
  println(i)
}
//新增判斷條件
for (i<- 1 to   10 if i >5 ){
  println(i)
}
for (i<- 1 until  10){
  println(i)
}



5.預設引數 & 命名引數 & 變長引數

// 命名引數
def subjects(name1:String ,name2:String): Unit ={
  println(name1)
  println(name2)
}
subjects("語文","數學")
subjects(name2 = "數學",name1 = "語文")
-----------------------------------------------------
//變長引數
def sum(nums:Int*) = {
  var result = 0
    for(i <- nums){
      result += i
    }
  result
}
println(sum(6,8,10))
println(sum(1.to(10) :_*))  // :_* 強制轉換int
-------------------------------------------------------
def teacher(teachers:String*): Unit ={
  for ( i <- teachers){
    println(i)
  }
}
teacher("語文","數學")
teacher(Array("物理","化學"):_*)  // 陣列強制轉換string

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31441024/viewspace-2158275/,如需轉載,請註明出處,否則將追究法律責任。

相關文章