[英]Function parameter names in Kotlin
我在一些 Kotlin 示例中看到了在傳遞值之前設置參數名稱的下一個語法:
LoginResult(success = LoggedInUserView(displayName = result.data.displayName))
與下一個語法有什么區別? 它只是視覺上的還是有某種目的?
LoginResult(LoggedInUserView(result.data.displayName))
根據Kotlin 文檔:
調用 function 時,可以命名它的一個或多個 arguments。 This may be helpful when a function has a large number of arguments, and it's difficult to associate a value with an argument, especially if it's a boolean or null value.
當您在 function 調用中使用命名 arguments 時,您可以自由更改它們列出的順序,如果您想使用它們的默認值,您可以完全不使用它們。
因此,本質上,當您對 function 有很多參數時,它們會很有幫助。 例如,而不是:
doSomething(true, true, true)
為了清楚起見,我們可以命名這些參數:
doSomething(
first = true,
second = true,
third = true
)
編譯后的代碼是相同的,這只是為了讓開發人員清楚。
另一個用例是,如果您願意,您可以混合訂單:
doSomething(
third = true,
first = false,
second = false
)
同樣,生成的代碼以相同的方式工作,這也是為了讓開發人員清楚。
是的,這只可視化您的參數值。 你可以使用它或不使用它,它不會造成麻煩。
它很特別
查看我的數據示例 class
data class Movie(
var title: String? = null,
var poster: Int? = 0,
var originalLang: String? = null
)
那么您可以輕松放置構造函數而無需看到 stream
喜歡:
val movie = Movie(poster = 9, originalLang = "en", title = "Overlord")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.