美文网首页
Kotlin进制转换

Kotlin进制转换

作者: JayQiu | 来源:发表于2023-10-10 14:52 被阅读0次

进制表示

kotlin不支持表示8进制。

二进制

0b1101

十六进制å

0xd

运算

与 1001 & 1101 -> 1001

(0b1001 and 0b1101).toString(2) // 或者 0b1001.and(0b1101).toString(2)

或 1001 | 1101 -> 1101

(0b1001 or 0b1101).toString(2) // 或者 0b1001.or(0b1101).toString(2)

异或 1001 ^ 1101 -> 0100

(0b1001 xor 0b1101).toString(2) // 或者 0b1001.xor(0b1101).toString(2)

左移 1001 << 1 -> 10010

(0b1001 shl 1).toString(2) // 或者 0b1001.shl(1).toString(2)

右移 1001 >> 1 -> 0100

(0b1001 shr 1).toString(2) // 或者 0b1001.shr(1).toString(2)

无符号右移 1001 >>> 1 -> 0100

(0b1001 ushr 1).toString(2) // 或者 0b1001.ushr(1).toString(2)

十进制

十进制转2进制 13->1101

13.toString(2) // 或者 Integer.toBinaryString(13)

十进制转8进制 13->15

13.toString(8) // 或者 Integer.toOctalString(13)

十进制转16进制 13->d

13.toString(16) // 或者 Integer.toHexString(13)

二进制

2进制转8进制 1101->13->15

// 先转10进制再转8进制 "1101".toInt(2).toString(8)

2进制转10进制 1101->13

"1101".toInt(2) // 或者 Integer.valueOf("1101",2)

2进制转16进制 1101->13->d

// 先转10进制再转16进制 "1101".toInt(2).toString(16)

八进制

8进制转2进制 15->13->1101

// 先转10进制再转2进制 "15".toInt(8).toString(2)

8进制转10进制 15->13

"15".toInt(8) // 或者 Integer.valueOf("15",8)

8进制转16进制 15->13->d

// 先转10进制再转16进制 "15".toInt(8).toString(16)

十六进制

16进制转2进制 d->13->1101

// 先转10进制再转2进制 "d".toInt(16).toString(2)

16进制转8进制 d->13->15

// 先转10进制再转8进制 "d".toInt(16).toString(8)

16进制转10进制 d->13

"d".toInt(16) // 或者 Integer.valueOf("d",16)

来自掘金的洋
链接:https://juejin.cn/post/7021346622667767845

相关文章

网友评论

      本文标题:Kotlin进制转换

      本文链接:https://www.haomeiwen.com/subject/gqgwbdtx.html