如何删除kotlin中的对象?

如何删除kotlin中的对象?,kotlin,Kotlin,我有类和两个对象。我想删除第一个对象。我如何删除它 我尝试了delete()(我在kotlinlangcom上找到了它),但它不起作用。我有红灯泡推荐:“创建成员函数人.删除”,“重命名引用”和“创建扩展函数人.删除” 您不需要像在其他语言(如c++/c)中那样删除对象。。。JVM的垃圾收集器正在处理它(如果将kotlin与JVM一起使用) 你所需要知道的就是在对象上不保留任何引用 因此,如果您有一个集合(列表、地图…)将对象放入其中,那么如果该集合是一个长期存在的类(如模型或其他)的属性,您也

我有类和两个对象。我想删除第一个对象。我如何删除它

我尝试了delete()(我在kotlinlangcom上找到了它),但它不起作用。我有红灯泡推荐:“创建成员函数人.删除”,“重命名引用”和“创建扩展函数人.删除”


您不需要像在其他语言(如c++/c)中那样删除对象。。。JVM的垃圾收集器正在处理它(如果将kotlin与JVM一起使用) 你所需要知道的就是在对象上不保留任何引用

因此,如果您有一个集合(列表、地图…)将对象放入其中,那么如果该集合是一个长期存在的类(如模型或其他)的属性,您也必须将其放入其中。。。这是在kotlin中陷入麻烦的唯一可能性,将引用放入由静态或长期存在的对象引用的集合中

在函数中,不需要删除使用创建的对象。 请记住,垃圾收集器(GC)不是在完成方法后立即运行的。根据对象的年龄和垃圾收集器本身,有不同的策略。如果您希望看到GC的运行,这个工具(visualgc)有一些非常好的可视化效果


您还可以在这里找到有关垃圾收集的更多详细信息:

什么是
delete
,它从哪里来,或者它应该做什么?您是否试图从内存中删除它?Kotlin在内存中处理变量引用,因此开发人员无法控制它。我想<代码> BOB= NULLUT/C++ >是你想要的(而<代码> Bob 是空的)。Kotlin不是C++,在那里你可以扩展控制哪个对象将在内存中生存。Kotlin在JVM上工作,这意味着它附带了一个垃圾收集器。垃圾收集器自动收集堆中未使用的对象,条件是任何对象都无法访问这些对象(不包括弱/软引用)。谢谢。我只是试着去理解,复制和复制。如果kotlin在JVM上工作,我如何才能复制对象,或者我不需要它?或者我不能复制所有的东西?我试着在谷歌上查找信息,但什么也找不到。你能帮助我吗?
fun main() {
    // copy object in object
    data class Person (var name: String = "Orig", var type: String = "piece",
                       var age: Int = 18, var high: Double = 25.7, var code: Int = 1522)
    {
        var info: String = "0"
        get() = "Name: $name Age: $age Type: $type High: $high Code: $code"
    }
    val ann: Person = Person("Ann", "man", 10, 0.5, 1408) // 1st object with some properties
    var bob: Person = Person("Bob", "girl", 20, 15.0, 1239) // 2nd object without prop
    println(ann.info)// props 1st object
    println(bob.info)// props 2nd object
    print(" ---- ")
    bob = ann.copy() // copy 1st in 2nd
    println("Bob has Anns' props: ")
    print("final " + bob.info) // new props 2nd object
    bob.delete()

}