gpt4 book ai didi

Android Room 自动生成和初始化

转载 作者:行者123 更新时间:2023-12-03 13:27:59 27 4
gpt4 key购买 nike

我有一个包含 Stuff 实体的 Room 数据库。这些实体具有将自动生成的 ID:

@Entity(tableName = "stuff")
data class Stuff(val text: String) {
@PrimaryKey(autoGenerate = true) var id: Int = 0
}

我的代码有两件事我不喜欢:
  • 我用 0 初始化 id,即使它应该由 Room 初始化。
  • id 数据成员是可变的。

  • 我尝试使用 lateinit var 但编译器不允许我在原始类型上执行此操作。有没有办法在 Kotlin 中克服上面提到的两个问题?

    最佳答案

    使用辅助构造函数解决这个问题有什么想法?

    @Entity(tableName = "stuff")
    data class Stuff(
    @PrimaryKey(autoGenerate = true)
    val id: Int,
    val text: String
    ) {
    constructor(text: String) : this(0,text)
    }

    关于Android Room 自动生成和初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55890509/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com