[英]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.