gpt4 book ai didi

kotlin - `Unit = Unit`在 Kotlin (Kotlin)中的作用是什么?

转载 作者:行者123 更新时间:2023-12-02 13:01:46 30 4
gpt4 key购买 nike

ReKotlin repo README中,有如下代码:

data class CounterActionIncrease(val unit: Unit = Unit): Action
代码 Unit = Unit是什么意思?

最佳答案

在这种情况下的赋值(即Unit = Unit)就是如何定义default argument。它的概念与您拥有的概念没有什么不同:

class Foo(val bar: String = "Default Value")
由于 Unit object declaration,因此它是一个单例,其实例由对象名称引用。因此, val unit: Unit = UnitUnit的实例分配为默认参数。
也就是说,具有类型类型为 Unit的class属性似乎很奇怪。我能想到的唯一原因是因为 data classes需要在主构造函数中声明至少一个参数,并且出于某种原因,该类不需要“真实”属性,但它必须是数据类(尽管我不需要)无法了解这种情况下对数据类的需求)。

To ensure consistency and meaningful behavior of the generated code, data classes have to fulfill the following requirements:

  • The primary constructor needs to have at least one parameter; [emphasis added]
  • All primary constructor parameters need to be marked as val or var;
  • Data classes cannot be abstract, open, sealed or inner;
  • (before 1.1) Data classes may only implement interfaces.

关于kotlin - `Unit = Unit`在 Kotlin (Kotlin)中的作用是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63333255/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com