使用Kotlin合成属性
我正在Kotlin试用Vert.x。 我有以下一段代码:
val deploymentOptions = DeploymentOptions() deploymentOptions.setConfig(JsonObject().put("http.port", 8081))
一切工作正常。 但是,IntelliJ IDEA在第二行报告我应该使用“Kotlin合成属性”。
任何想法如何在这种情况下做到这一点。 另外,我正在使用Maven。
解:
deploymentOptions.config = JsonObject().put("http.port", 8081)
谢谢您的帮助 :)
打ALT +进入该行。 IDEA应该建议你一个解决方案。 选一个。
大概:
deploymentOptions.config = JsonObject().put("http.port", 8081)
在Java interop的Kotlin文档中 ,它讲述了getter和setter以及它们与属性的关系:
遵循Java约定的getter和setter方法(名称以get开头,名称以set开头的单参数方法的无参数方法)在Kotlin中表示为属性。
它提供了一个例子:
import java.util.Calendar fun calendarDemo() { val calendar = Calendar.getInstance() if (calendar.firstDayOfWeek == Calendar.SUNDAY) { // call getFirstDayOfWeek() calendar.firstDayOfWeek = Calendar.MONDAY // call setFirstDayOfWeek() } }
您在IDE中收到的提示告诉您,使用属性语法而不是直接调用getter或setter会更好(惯用)。 因此,而不是使用:
deploymentOptions.setConfig(...)
你会使用:
deploymentOptions.config = ...