【发布时间】:2016-11-24 07:55:33
【问题描述】:
给定以下 Kotlin 类:
data class Test(val value: Int)
如何覆盖 Int getter 以便在值为负时返回 0?
如果这不可能,有哪些技术可以达到合适的结果?
【问题讨论】:
-
请考虑更改代码的结构,以便在实例化类时将负值转换为 0,而不是在 getter 中。如果您按照以下答案中的说明覆盖 getter,则所有其他生成的方法(例如 equals()、toString() 和组件访问)仍将使用原始负值,这可能会导致令人惊讶的行为。
标签: kotlin