java如何将二进制转换为十进制

简介: 对于十进制的转换,就当是对于java基础的复习了,转换只能想到第一种方法,因为当时学的比较粗糙,至于第二种和第三种,是参考了网络文章,现在是对于java基础的一些深入了解,参考链接在文章的下方

1、使用java内部提供的方法,直接进行api的调用

public static void binaryTodecimal2(int n) {
        String res = Integer.toBinaryString(n);
        System.out.println(res);

        // 将字符串转换为数字进行打印,但不建议这么做,当为负数时,int型的表示不了32的一个整数,另外,int的位数有大小,打印的值超出范围就会报错
        int in = Integer.parseInt(res);
        System.out.print(in + "\n");
    }

2、使用“移位”操作实现:

public static void binaryToDecimal(int n) {
        for (int i = 8; i >= 0; i--) {
            System.out.print(n >>> i & 1);
        }
    }

3、除基倒取余法

public static void binaryToDecimal1(int n) {
        int t = 0; // 用来记录位数
        int bin = 0; // 用来记录最后的二进制数
        int r = 0; // 用来存储余数

        while (n != 0) {
            r = n % 2;
            n = n / 2;
            //原作者的方法是:bin += r * Math().pow(10, t),这样写报错,就改成下面这样了,pow()方法,求取x的y次方,数值类型是double;
            bin += r * Math.pow(10, t);
            t++;
        }
        System.out.println(bin + "\n");
    }

参考链接:https://www.cnblogs.com/vsign/p/7290594.html

目录
相关文章
|
6月前
|
Java
Java中整数(负数)的二进制表示
Java中整数(负数)的二进制表示
|
3月前
|
存储 Oracle Java
01 Java概述基础与计算机基础(DOS+进制+原码反码补码)
01 Java概述基础与计算机基础(DOS+进制+原码反码补码)
42 17
|
4月前
|
Java Apache Maven
Java:commons-codec实现byte数组和16进制字符串转换
在上述代码中,`Hex.encodeHexString(bytes)`用于将byte数组转换为16进制字符串,`Hex.decodeHex(hexString)`用于将16进制字符串转换为byte数组。
50 0
|
4月前
|
Java Apache Maven
Java:commons-codec实现byte数组和16进制字符串转换
在上述代码中,`Hex.encodeHexString(bytes)`用于将byte数组转换为16进制字符串,`Hex.decodeHex(hexString)`用于将16进制字符串转换为byte数组。
105 0
|
5月前
|
算法 Java Go
【经典算法】LeetCode 67. 二进制求和(Java/C/Python3/Golang实现含注释说明,Easy)
【经典算法】LeetCode 67. 二进制求和(Java/C/Python3/Golang实现含注释说明,Easy)
62 2
|
5月前
|
算法 Java
Java将16进制的字符串转换为10进制数的方法
【6月更文挑战第27天】Java将16进制的字符串转换为10进制数的方法
1609 0
|
5月前
|
Java
剑指offer_3_前n个数字二进制形式中1的个数(java)
剑指offer_3_前n个数字二进制形式中1的个数(java)
|
5月前
|
Java
剑指offer_2_二进制加法(java)
剑指offer_2_二进制加法(java)
|
5月前
|
Java
java实现字符串与十六进制字符串互转
java实现字符串与十六进制字符串互转
|
6月前
|
传感器 数据采集 网络协议
Java串口通信:从十六进制字符串到字节数组的正确转换与发送
Java串口通信:从十六进制字符串到字节数组的正确转换与发送
281 4