乐趣区

关于java:这样进行进制转换更快更清晰哦


关键字


根本数据类型


进制

进制:进制是一种计数办法,咱们生存中最常应用的是十进制数,也就是逢十进一,而在计算机中数据存储的形式采纳的是二进制数,也就是逢二进一,常见的进制还有八进制和十六进制。

1. 进制的转换

进制之间的转换,最常应用到的是十进制转换为其余进制,其余进制转换为十进制,而十进制也能够作为中介,用作于其余进制间的转换,当初咱们以最罕用的十进制转二进制和二进制转十进制为例进行解说,其余进制转换也雷同:

(1)十进制转二进制

  • 十进制数:35
  • 办法:将十进制数间断除以 2(几进制就除以几),记录每次除以 2 后的余数,最初将余数倒过去写,如有余 8 位在最右侧补上 0,这就是最终的二进制数。
  • 因为二进制习惯用 8 的次方数进行示意,所以须要补 0,最终十进制 35 的二进制数就是 0010 0011。

(2)二进制转十进制数

  • 二进制数:1000 1010
  • 办法:从右往左的给二进制的每一位从 0 开始标上 序号 ,将每一位的值乘以 2(几进制就乘以几)的 序号 次方,并将每一位算出的后果加起来失去的数就是该二进制数的十进制示意。


2. java 代码实现进制转换

(1)十进制转二进制

public static void TentoTwo(long n) {
        long res = 0;
        int i = 1;
        while(n>0) {
             res += n % 2 * i; 
             n /= 2;
             i *= 10;
        }
        System.out.println(res);
}

(2)二进制转十进制数

// 二进制转十进制数
public static void TwotoTen(long n) {
        long res = 0;
        int i =0;
        while(n>0) {res += n%10 * mi(2,i);
            n /= 10;
            i++;
        }
        System.out.println(res);
    }
// 实现某数的幂次方,a 的 b 次方
public static int mi(int a, int b) {if(b == 0) {return 1;}else if(b == 1) {return a;}else {
   int c = a;
            for(int i = 1; i<b; i++) {a *= c;}
        }
        return a;
}


更多精彩内容敬请关注微信公众号:【平兄聊 Java】

退出移动版