在 Kotlin 中为自己的数据类型创建 BigInteger.ZERO 的模拟
Creating the analogue of BigInteger.ZERO for own data type in Kotlin
因此,众所周知,Kotlin 能够访问 Java 库,其中包括 BigInteger class。这个 class 有一个非常方便的功能:有一个关键字,叫做“BigInteger.ZERO”,它 returns 一个值为零的 BigInteger 对象。
现在我正在编写分数数据类型,我非常想为它做同样的事情。但是将 val 放在 class 中的问题在于,这首先需要一个对象开始;它不是一个“静态”常量,可以这么说。
对于任何即将到来的回复,我将非常感激。
您可以将常量作为 val
放入 class 的伴生对象中:
class Fraction {
...
companion object {
val ZERO = Fraction()
}
}
然后你可以通过Fraction.ZERO
调用你的常量。
请注意,这仅在您的分数 class 不可变时才有意义。
因此,众所周知,Kotlin 能够访问 Java 库,其中包括 BigInteger class。这个 class 有一个非常方便的功能:有一个关键字,叫做“BigInteger.ZERO”,它 returns 一个值为零的 BigInteger 对象。
现在我正在编写分数数据类型,我非常想为它做同样的事情。但是将 val 放在 class 中的问题在于,这首先需要一个对象开始;它不是一个“静态”常量,可以这么说。
对于任何即将到来的回复,我将非常感激。
您可以将常量作为 val
放入 class 的伴生对象中:
class Fraction {
...
companion object {
val ZERO = Fraction()
}
}
然后你可以通过Fraction.ZERO
调用你的常量。
请注意,这仅在您的分数 class 不可变时才有意义。