Scala 中的下劃線佔位符

Mohammad Irfan 2023年1月30日 2022年5月18日
  1. 在 Scala 中使用下劃線匯入語句
  2. 在 Scala 的 for 迴圈中使用下劃線
  3. 在 Scala 的 case 模式中使用下劃線
  4. 在 Scala 的變數中使用下劃線
  5. 在 Scala 中使用下劃線數值
Scala 中的下劃線佔位符

本教程將討論下劃線 (_) 及其在 Scala 中的用法。在 Scala 中,下劃線 (_) 是一個佔位符,表示沒有值或變數。

我們可以使用它為變數分配預設值,並在程式碼中匯入包的所有類。

在 Scala 中使用下劃線匯入語句

使用下劃線來匯入包是 Scala 中佔位符的常見用法。例如,如果我們要匯入所有的中斷函式,請使用下劃線。

import scala.util.control.Breaks._
object MyClass {
   def main(args: Array[String]) {
     breakable {
            for(i<-1 to 10 by 2){
                if(i==5)
                    break
                else
                    println(i)
            }
        }
   }
}

輸出:

1
3

在 Scala 的 for 迴圈中使用下劃線

我們使用 foreach 中的下劃線來遍歷列表元素。我們用它來代替列表的任何引用變數。

object MyClass {
    def main(args: Array[String]) {
     List(1,2,3,4).foreach(println(_))
    }
}

輸出:

1
2
3
4

在 Scala 的 case 模式中使用下劃線

我們還可以使用它在 case 模式中設定預設 case。在其他語言中,我們使用 default 關鍵字來定義一個在沒有找到匹配 case 時執行的預設 case,在 Scala 中也是如此。

object MyClass {
   def matchTest(x: Int): String = x match {
     case 1 => "one"
     case 2 => "two"
     case _ => "anything other than one and two"
   }
   def main(args: Array[String]) {
     val r = matchTest(2)
     val r2 = matchTest(20)
     println(r)
     print(r2)
   }
}

輸出:

two
anything other than one and two

在 Scala 的變數中使用下劃線

我們可以使用下劃線來引用變數宣告中的預設值。如下例所示,我們宣告瞭一個預設值為 0 的整型變數。

object MyClass {
  var i: Int = _
   def main(args: Array[String]) {
     print(i)
   }
}

輸出:

0

在 Scala 中使用下劃線數值

這是使用下劃線的另一種情況。我們正在使用它來使數值更具可讀性。

當我們有一個很大的值時,讀取一次並不容易。它也稱為數字分隔符。

object MyClass {
   def main(args: Array[String]) {
     var i: Int = 1_000_000
     print(i)
   }
}

輸出:

1000000