Kotlin documentation仅在访问 Java 和枚举类中描述克隆。在后一种情况下,克隆只是抛出一个异常。
那么,我/应该如何克隆任意 Kotlin 对象?
我应该像在 Java 中一样使用 clone()
吗?
最佳答案
对于数据类
,可以使用编译器生成的copy()
method .请注意,它将执行浅拷贝。
要创建集合的副本,请使用 toList()
或 toSet()
方法,具体取决于您需要的集合类型。这些方法总是创建一个集合的新副本;他们还执行浅拷贝。
对于其他类,没有特定于 Kotlin 的克隆解决方案。如果它符合您的要求,您可以使用 .clone()
,如果不符合您的要求,则可以构建不同的解决方案。
https://stackoverflow.com/questions/49053432/
相关文章:
kotlin - 如何使用 Gradle Kotlin 脚本创建胖 JAR?
kotlin - 带有 T.() 的 Kotlin 函数签名是什么意思?
android - 带有命名参数的 Kotlin 中的 Dagger 2 构造函数注入(inject
java - 在 Kotlin 中使用 Room 的 @ForeignKey 作为 @Entity
intellij-idea - 为什么 IntelliJ 建议将调用链转换为序列?
android - 抑制 "Identifier not allowed in Android"
java - Smartcast 是不可能的,因为属性有开放的或自定义的 getter