kotlin - 使用类字段的Kotlin Data类 setter

标签 kotlin data-class

我有一个使用 kotlin数据类的redis实体,它的 ID和应该是同一类的其他几个字段的组合。
是否可以通过为ID字段定义setter而不是在数据类之外进行计算来实现?

@RedisHash("Game")
data class Game(
  @Id
  val generatedId: String = "Default_ID",
  val name: String,
  val location: String,
  val homeTeam: String,
  val awayTeam: String

)

// want something like this

var generatedId : String = "DEFAULT_ID"
  get() = "${name}${location}"

// or even better

var generated_Id : String =  "${name}${location}"

最佳答案

你有没有尝试做这样的事情?

@RedisHash("Game")
data class Game(
    val name: String,
    val location: String,
    val homeTeam: String,
    val awayTeam: String,
    @Id
    val generatedId: String = "${name}${location}"
)

关于kotlin - 使用类字段的Kotlin Data类 setter ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60238266/

相关文章:

Android kotlin 和 Room Persistences 库未构建

kotlin Junit 测试函数语法

java - 如何在 Kotlin 中创建匿名接口(interface)的实例?

android - 从另一个 fragment 返回到它后,带有 ViewPager 的 fragment 有空白页

class - 为什么我们不能在Kotlin中将类的可见性标记为 “protected”?

android - Kotlin 数据类和可为空的类型

spring-mvc - 使用 Kotlin 数据类在 Spring @RequestMapping 注释方法中对路径变量进行分组

android - 将 POJO 转换为数据类 Kotlin

reflection - 通过反射调用数据类copy()

kotlin - 在 Kotlin 密封类之外引用?