在 Kotlin 中使用 ULong 作为函数参数
Use ULong as function parameter in Kotlin
我可以在 Kotlin 的函数定义中使用 ULong
作为参数吗?
我的代码如下所示:
import androidx.compose.ui.graphics.Color
fun EColor(value: ULong) = Color(value)
val Red700 = EColor(0xffdd0d3c)
然后我得到一个错误看起来像:
Conversion of signed constants to unsigned ones is prohibited
如果我调用 val Red700 = Color(0xffdd0d3c)
,那么它工作正常。
我怎么会收到这个错误?
Kotlin 中有 unsigned literals。您可以通过添加 u
或 U
后缀来编写它们:
val Red700 = EColor(0xffdd0d3cU)
您也可以拨打toULong
:
val Red700 = EColor(0xffdd0d3c.toULong())
我可以在 Kotlin 的函数定义中使用 ULong
作为参数吗?
我的代码如下所示:
import androidx.compose.ui.graphics.Color
fun EColor(value: ULong) = Color(value)
val Red700 = EColor(0xffdd0d3c)
然后我得到一个错误看起来像:
Conversion of signed constants to unsigned ones is prohibited
如果我调用 val Red700 = Color(0xffdd0d3c)
,那么它工作正常。
我怎么会收到这个错误?
Kotlin 中有 unsigned literals。您可以通过添加 u
或 U
后缀来编写它们:
val Red700 = EColor(0xffdd0d3cU)
您也可以拨打toULong
:
val Red700 = EColor(0xffdd0d3c.toULong())