sta*_*abs 11 types language-design unsigned-integer kotlin
我刚刚遇到一种情况,其中无符号整数本来就非常有用(例如,任何负值都没有意义等等).令人惊讶的是,我发现Kotlin不支持无符号整数 - 并且似乎没有其他任何关于为什么(即使我看过).
我错过了什么吗?
从 Kotlin 1.3 开始,无符号类型可用并且基于内联类功能。
请参阅 1.3-M1 版本的“无符号整数类型”部分:https : //blog.jetbrains.com/kotlin/2018/07/see-whats-coming-in-kotlin-1-3-m1/
作为glidor正确提到的,对应的无符号Byte,Short,Int并Long确实存在,因为科特林1.3 ,但要小心,因为他们仍然是 实验:
从文档:
kotlin.UByte:无符号的8位整数,范围从0到255
kotlin.UShort:无符号的16位整数,范围从0到65535
kotlin.UInt:无符号的32位整数,范围从0到2 ^ 32-1
kotlin.ULong:无符号的64位整数,范围从0到2 ^ 64-1
用法
// You can define unsigned types using literal suffixes
val uint = 42u
// You can convert signed types to unsigned and vice versa via stdlib extensions:
val int = uint.toInt()
val uint = int.toUInt()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4940 次 |
| 最近记录: |