在kotlin中我可以初始化一个对象并在一行中设置一个参数

Chr*_*gge 2 kotlin

类:

class CameraBrandDto(override val id: Long = 0, override var dateCreated: Date = Date(), override var dateUpdated: Date = Date()) : DataTransportObject {
    override var clazz = this.javaClass.simpleName.replace("Dto", "")

    @NotBlank
    @Size(max = 13)
    var name: String = ""

    var models: MutableSet<DtoMin> = mutableSetOf(DtoMin(0, "UNDEFINED", "UNDEFINED", Date(), Date()))

}
Run Code Online (Sandbox Code Playgroud)

我想在一行中完成这一点

val axisDto  = CameraBrandDto()
axisDto.name = "AXIS"
Run Code Online (Sandbox Code Playgroud)

这可能吗???

hot*_*key 6

是的,只需使用标准库函数.apply { ... },该函数在对象上执行带接收器的lambda并返回该对象:

val axisDto = CameraBrandDto().apply { name = "AXIS" }
Run Code Online (Sandbox Code Playgroud)