2019年5月20日 星期一

Kotlin學習筆記(6) Functions with vararg Parameters

Kotlin學習筆記(6) Functions with vararg Parameters


fun main() {
    printAll("Hello", "Hallo", "Salut", "Hola", "你好")                // 2  
     printAllWithPrefix("Hello", "Hallo", "Salut", "Hola", "你好", prefix = "Greeting: "  // 4

)
        
        
}

fun printAll(vararg messages: String) {                            // 1
    for (m in messages) println(m)
}


fun printAllWithPrefix(vararg messages: String, prefix: String) {  // 3
    for (m in messages) println(prefix + m)
}

fun log(vararg entries: String) {
    printAll(*entries)                                             // 5
}



輸出畫面
Hello
Hallo Salut Hola 你好 Greeting: Hello Greeting: Hallo Greeting: Salut Greeting: Hola Greeting: 你好


  1. The vararg modifier turns a parameter into a vararg.
  2. This allows calling printAll with any number of string arguments.
  3. Thanks to named parameters, you can even add another parameter of the same type after the vararg. This wouldn't be allowed in Java because there's no way to pass a value.
  4. Using named parameters, you can set a value to prefix separately from the vararg.
  5. At runtime, a vararg is just an array. To pass it along into a vararg parameter, use the special spread operator * that lets you pass in *entries (a vararg of String) instead of entries (an Array<String>).

沒有留言:

張貼留言

Node-Red 抓取 opendata 的資料集產生AQI 空氣品質指

Node-Red 抓取 opendata 的資料集產生AQI 空氣品質指標 實現透過 Node-RED 抓取環境部 OpenData(空氣品質 AQI)資料,最核心的流程為: 注入觸發(Inject) → HTTP 請求(http request) → 解析 JSON 資料(Fu...