问题标签 [data-class]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kotlin - Kotlin 数据类中可变集合的防御性副本
我想要一个接受只读列表的数据类:
但它也可以接受MutableList
,因为它是List
.
例如以下代码修改传入的列表:
有没有办法在数据类中执行传入列表的防御性副本?
java - 如何将 Java 类转换为 Kotlin 数据类
我使用 Android Studio 的 Kotlin 插件将我的 Java 类转换为 Kotlin。问题是它仍然不是 Kotlin 风格。我想改用 Kotlin 数据类。但是,每当我使用主要和次要构造函数创建它时,它都不起作用。在我的情况下,正确的 DATA 类实现是什么?
kotlin - 即使我实现了所有的 hashCode()、equals() 和 toString(),我是否应该使用数据类?
我有一个类是字符串的解析结果,因此我必须强制 toString() 返回该源字符串而不是那些已解析的值。它还具有自定义的 equals()/hashCode() 机制。仍然将其标记为数据类有什么好处吗?
inheritance - How to let a data class implements Interface / extends Superclass properties in Kotlin?
I have several data classes which include a var id: Int?
field. I want to express this in an interface or superclass, and have data classes extending that and setting this id
when they are constructed. However, if I try this:
It complains I'm overriding the id
field, which I am haha..
Q: How can I let the data class A
in this case to take an id
when it's constructed, and set that id
declared in the interface or superclass?
kotlin - 如何更新实现通用接口的数据类
我正在为数据类和多态性而苦苦挣扎。我想从不变性中受益,但仍然能够更新我的状态。为此,我希望能够使用该copy
功能。
让我们举个例子。我有这个类层次结构:
现在我希望能够做这样的事情(但这不起作用):
如何以多态方式创建更新的副本?
我试图给接口一个copy
函数,但如果子类型有额外的属性,它们不会覆盖复制函数。
这很令人沮丧,因为我知道子类型具有该属性,但我无法在界面中利用该知识。
kotlin - Kotlin 数据类从哪里扩展而来?我可以增加它们吗?
我一直在摆弄 Kotlin data
class
es,我在想是否有可能增加一些类(例如包含的功能copy
)以增加所有data
class
es?
有可能增加data
class
es 吗?
android - Proguard - do not obfuscate Kotlin data classes
In my project I use AutoValue for my old model classes. I started using Kotlin and I want to use Data Classes instead of AutoValue. I want to disable the obfuscation for all Data classes in my Data layer but to keep obfuscating the other classes in the package.
Is there a way to do this?
I would expect to have something like this in my Proguard file:
inheritance - 如何对数据类使用简单继承?
在java中,
在 Kotlin 中,这归结为:
方法一:
方法二:
当您拥有简单地继承属性的数据类时,这两种方法都倾向于大量重复,因为您必须再次写下您指定的所有内容 - 这根本无法扩展并且不知何故感觉不对。
这是最先进的技术,还是将以前的 java 代码翻译成 kotlin 的最佳方式?
android - 类文字的左侧只允许类
我在 StackOverflow 中知道很多类似的问题,但没有解决我的问题。
我有一个通用数据类:
我正在尝试这样使用:
IDE 显示错误:类文字的左侧只允许使用类
如何解决这个问题?提前致谢。
inheritance - Kotlin:如何继承数据类中的属性
我有这样声明的抽象 Token 类:
我想继承数据类中的索引属性,如下所示:
但这给了我错误Data class primary constructor must have only property (val / var) parameters
我必须做些什么来解决这个问题?