[英]How to create a Java instance of the object from Kotlin data class but don't include all fields?
我有以下Kotlin数据类:
data class Filter @JvmOverloads constructor(
val key: String? = null,
val operation: String? = null,
val value: String? = null,
val group: String? = null,
val searchInTranslations: Boolean? = null)
我用Java代码创建了此类的实例。 但是我想创建一个除group
字段外的所有字段的实例。 如何用Java做到这一点?
我无法为group
分配默认值,因为在某些Java类中,我确实为此字段分配了一个值,在其他Java类中,我需要从对象创建中忽略此字段。
Java不支持此功能,但是您可以做一个简单的技巧。
生成两个构造函数,一个构造函数带有可选的字段group
,一个没有构造函数。 因此,无需从类中为该字段分配值,只需调用第二个构造函数即可:
public YourClass(String key, String operation, String value, bool search)
{
this (key, operation, value, null, search); //null for the groups
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.