我在 Kotlin 数据类中声明了 10 多个变量,我想为它创建一个空的构造函数,就像我们通常在 Java 中所做的那样。
数据类:
data class Activity(
var updated_on: String,
var tags: List<String>,
var description: String,
var user_id: List<Int>,
var status_id: Int,
var title: String,
var created_at: String,
var data: HashMap<*, *>,
var id: Int,
var counts: LinkedTreeMap<*, *>,
)
预期用途:
val activity = Activity();
activity.title = "New Computer"
sendToServer(activity)
但是数据类要求在创建构造函数时传递所有参数。我们如何像 Java POJO 类构造函数那样简化它?
val activity = Activity(null,null,null,null,null,"New Computer",null,null,null,null)
sendToServer(activity)
原文由 Sai 发布,翻译遵循 CC BY-SA 4.0 许可协议
您在这里有 2 个选项:
If you don’t rely on
copy
orequals
of theActivity
class or don’t use thedata class
methods at all you可以像这样使用常规类:并非每个 DTO 都需要是
data class
反之亦然。事实上,根据我的经验,我发现数据类在涉及一些复杂业务逻辑的领域特别有用。