欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

【Java基础篇】Unicode、进制转换

发布时间:2025/3/8 33 豆豆
生活随笔 收集整理的这篇文章主要介绍了 【Java基础篇】Unicode、进制转换 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

一、unicode

先说一下unicode是什么?

最开始美国人搞出了ASCII这个东西,什么意思呢?

首先一个字节,我们都知道是8个bit位,总共能表示256种状态,然后我们就把这256种状态每种状态都对应一个字符。这种对应关系就是ASCII。ASCII中一共定义了128个字符,例如:00110000,也就是48,对应字符'0'。

对于英语来说,128个字符来编码是完全足够的。但是汉字有那么多,256个完全不够用啊,于是定义Unicode编码,就是增加大量的字符,一个字符可能对应2个字节或者3个字节。

在Java中,一个字符对应两个字节,unicode编码范围为'\u0000'(0)~'\uffff'(65,535),除去\u,后面的四位都是16进制,也就是说后面四位都是占用4个bit位,总共16个bit位,刚好两个字节。

二、进制转换

2.1、十进制转其他进制

方法功能
Integer.toBinaryString(int i)将十进制转换成二进制
Integer.toOctalString(int i)将十进制转换成八进制
Integer.toHexString(int i)将十进制转换成十六进制
Integer.toString(int i, int radix)将十进制转换成指定的进制
//10进制转8进制System.out.println(Integer.toOctalString(7));//7System.out.println(Integer.toOctalString(8));//10//10进制转16进制System.out.println(Integer.toHexString(15));//fSystem.out.println(Integer.toHexString(16));//10//10进制转其他进制System.out.println(Integer.toString(16, 17));//10进制转17进制,输出结果:gSystem.out.println(Integer.toString(17, 17));//10进制转17进制,输出结果:10

2.2、其他进制转十进制

Integer.parseInt(String s, int radix)

将指定进制的字符串转换成十进制

System.out.println(Integer.parseInt("1111", 2));//二级制“1111”转换成十进制,输出15System.out.println(Integer.parseInt("7", 8));//8进制“7”转换成十进制,输出7System.out.println(Integer.parseInt("10", 8));//8进制“10”转换成十进制,输出8System.out.println(Integer.parseInt("f", 16));//16进制“f”转换成十进制,输出15System.out.println(Integer.parseInt("10", 16));//16进制“10”转换成十进制,输出16

2.3、8进制和十进制字面表示法

System.out.println(010);//0开头表示8进制,010表示8进制下的10,所以结果是8System.out.println(0x1f);//0x开头表示16进制,0x10表示16进制下的1f,所以结果是31

 

总结

以上是生活随笔为你收集整理的【Java基础篇】Unicode、进制转换的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。