十进制与二进制都是数据记录的一种计数方法。对于一个数据,例如5555 可以写成5555 = 5 * 1000 + 5 *100+ 5*10+5*1 =5*10^3 +5*10^2+5*10^1+5*10^0 对于十进制来说,10就是十进制的基数,同理2就是二进数的基数。 十进制的数位是10^n。二进制的位数是2^n。按照这个思路,我们还可以推导出⼋进制(以8为基数)、十六进制(以16为基数)等等计数法。 ===============================华丽分割线===================================== java代码对数据进行实现二进制与十进制的换算 ======================================================================== import java.math.BigInteger; public class mach1 { /** * @return String * @Descrition: 十进制转化成二进制 * param decimalSource */ public static String decimalToBinary(int decimalSource) { BigInteger bi = new BigInteger(String.valueOf(decimalSource)); //转化为BigInterger类型,默认为十进制 return bi.toString(2); //参数2指定的是转化为二进制 } /** * @Description: 二进制转换成十进制 * @param binarySource * @return int */ public static int binaryToDecimal(String binarySource) { BigInteger bi = new BigInteger(binarySource, 2); //转化BigInterger类型,参数2指定的是二进制 return Integer.parseInt(bi.toString()); //默认转化为十进制 } public static void main(String[] args) { int a = 53; String b = "110101"; System.out.println(String.format("数字%d的二进制是%s", a, mach1.decimalToBinary(a))); //获取⼗进制数53的⼆进制数 System.out.println(String.format("数字%s的十进制是%d", b, mach1.binaryToDecimal(b))); //获取⼆进制数110101的⼗进制数 } }
二进制和十进制的学习理解
最新推荐文章于 2024-08-28 17:25:21 发布