Java 中的进制转换
基础知识
对于整数,有四种表示方式:
二进制:0,1 ,满2进1.以0b或0B开头。
十进制:0-9 ,满10进1.
八进制:0-7 ,满8进1.八进制数被冠以0来表示。
十六进制:0-9及A-F,满16进1.十六进制数被冠以0X来表示(字母大小写均可)
如: 0x3f20(十六进制) 0732 (八进制)
原码、反码、补码
所有数字在计算机底层都以二进制形式存在。
计算机以补码的形式保存所有的整数。
正数的原码、反码、补码都相同
负数的补码是其反码加1。
原码:直接将一个数值换成二进制数。
反码:是对原码按位取反,只是最高位(符号位)确定为1。
Java整数常量默认是int类型,当用二进制定义整数时,其第32位是符号位;当是long类型时,二进制默认占64位,第64位是符号位
Java代码实现
/*
10进制转2进制 Integer.toBinaryString(n); 一个二进制字符串.
10进制转8进制 Integer.toOctalString(n); 一个八进制字符串
10进制转16进制 Integer.toHexString(n); 一个16进制字符串
10进制转 r 进制 Integer.toString(100, 16); 一个r进制字符串
十六进制转成十进制
Integer.valueOf(“FFFF”,16).toString()
八进制转成十进制
Integer.valueOf(“876”,8).toString()
二进制转十进制
Integer.valueOf(“0101”,2).toString()
*/
public class execcise3 {
public static void main(String[] args) {
System.out.println("十进制:123\t" + "二进制:" + Integer.toBinaryString(123) +
"\t十六进制:" + Integer.toHexString(123) );
System.out.println("十六进制:0x123\t" + "二进制:" + Integer.toBinaryString(Integer.valueOf("123", 16))
+"\t十进制:" + Integer.valueOf("123", 16).toString());
}
}
微信关注
阅读剩余
版权声明:
作者:理想
链接:https://www.imyjs.cn/archives/321
文章版权归作者所有,未经允许请勿转载。
THE END