Java二、八、十、十六进制介绍
2024-09-08 21:24:51
1.说明
在Java中整数有四种表示方式,
分别为十进制,二进制,八进制,十六进制,
其中十进制就是平常最熟悉,使用最多的进制;
二进制是在计算机中使用最多的进制,
八进制和十六进制都是基于二进制的,
3位二进制数组成1位八进制数,
4位二进制数组成1位十六进制数,
所以二进制,八进制,十六进制互相转换很方便。
2.四种方式表示整数
- 十进制(Decimal):0-9 , 满10进1。
- 二进制(Binary): 0、1 ,满2进1,以0b或0B开头。
- 八进制(Octal): 0-7 , 满8进1, 以数字0开头表示。
- 十六进制(Hex): 0-9及A-F,满16进1,以0x或0X开头表示。注意A-F不区分大小写。
进制(数值) | 10 | 2 | 8 | 16 |
---|---|---|---|---|
进制(英文) | Decimal | Binary | Octal | Hex |
进制(中文) | 十进制 | 二进制 | 八进制 | 十六进制 |
字符集 | 0-9 | 0,1 | 0-7 | 0-9,A-F(a-f) |
进位方法 | 满10进1 | 满2进1 | 满8进1 | 满16进1 |
前导字符 | 无 | 0b或0B | 数字0 | 0x或0X |
3.常见整数的表示方法
针对不同的进制,
下表列出了常见整数的表示方法。
十进制 | 二进制 | 八进制 | 十六进制 |
---|---|---|---|
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
2 | 10 | 2 | 2 |
3 | 11 | 3 | 3 |
4 | 100 | 4 | 4 |
5 | 101 | 5 | 5 |
6 | 110 | 6 | 6 |
7 | 111 | 7 | 7 |
8 | 1000 | 10 | 8 |
9 | 1001 | 11 | 9 |
10 | 1010 | 12 | A |
11 | 1011 | 13 | B |
12 | 1100 | 14 | C |
13 | 1101 | 15 | D |
14 | 1110 | 16 | E |
15 | 1111 | 17 | F |
16 | 10000 | 20 | 10 |
17 | 10001 | 21 | 11 |
4.Integer类
上面给出的表格可以在开发中使用到,
在使用Java提供的相关类库时,
可以查看对应的表格,
下面基于Integer类的提供的API,
演示这几个API的使用。
public static void testSimpleMethod() {
Integer int1 = 2021;
// 默认打印的是十进制
System.out.println("1.默认十进制:");
System.out.println("十进制int1=" + int1);
// 使用十进制打印,toString
System.out.println("2.指定十进制方法:");
System.out.println("十进制int1=" + Integer.toString(int1));
// 使用十进制打印,指定参数
System.out.println("3.指定十进制参数:");
System.out.println("十进制int1=" + Integer.toString(int1, 10));
// 使用二进制打印
System.out.println("4.指定二进制方法:");
System.out.println("二进制int1=" + Integer.toBinaryString(int1));
// 使用八进制打印
System.out.println("5.指定八进制方法:");
System.out.println("八进制int1=" + Integer.toOctalString(int1));
// 使用十六进制打印
System.out.println("5.指定十六进制方法:");
System.out.println("十六进制int1=" + Integer.toHexString(int1));
}
程序输出如下:
1.默认十进制:
十进制int1=2021
2.指定十进制方法:
十进制int1=2021
3.指定十进制参数:
十进制int1=2021
4.指定二进制方法:
二进制int1=11111100101
5.指定八进制方法:
八进制int1=3745
5.指定十六进制方法:
十六进制int1=7e5
虽然这里的输出没有加上前导字符,
注意在Java使用不同进制的数值时,
需要加上相应的前导字符,
否则Java会当成十进制数。
5.其他
十进制的最大数是9,满10进1。
二进制的最大数是1,满2进1。
八进制的最大数是7,满8进1。
十六进制的最大数是15(F),满16进1,
由于10-15会和阿拉伯数字混淆,
所以使用A-F替代。
对于二进制,没有必要想太复杂,
把它当成一种特殊的十进制即可,
同样可以进行加减乘除,
最左边的数值是最高位,
最右边的数值是最低位,
数值可以有正负(+-)。
Java左移操作,相当于进行乘法,
左移一位,乘一次2。
Java右移操作,相当于进行除法,
右移一位,除一次2。
最新文章
- [转]HTML5 本地图片预览
- Android Loader使用详解
- 数据结构和算法 c#– 1.单项链表
- 使用Let's Encrypt手动创建https证书
- HDU----(4291)A Short problem(快速矩阵幂)
- 基于Spring MVC的Web应用开发(三) - Resources
- iOS:获取图片Alpha图片
- 手把手 学习Git
- 分贝块---dBblock
- Java对象引用/JVM分级引用——强引用、软引用、弱引用、虚引用
- P1119 灾后重建(floyd进阶)
- Oracle 11g OGG mgr定期清理tail 文件
- Ubuntu软件中心闪退
- IDEA从SVN中导入多模块项目
- PHP之获取终端用户IP
- git安装及git命令的用法
- RPM安装命令总结
- linux minitools+minicom 安装及使用
- 分形之龙形曲线(Dragon Curve)
- UVA 10539 - Almost Prime Numbers(数论)