package test1;
public class s01进制 {
public static final StringBuilder stb = new StringBuilder();
public static void main(String[] args) {
dg(18);
System.out.println(stb.reverse());//10->2
System.out.println(dg1(10010));//2->10
}
public static int dg(int num){//10->2
if(num<1){
return 0;
}
stb.append(num<=1?1:num%2);
return dg(num/2);
}
public static int dg1(int num){//2->10
String[] strarr = String.valueOf(num).split("");
int sum = 0;
int in = strarr.length-1;
for (int i=0;i<strarr.length;i++){
double sun = Integer.parseInt(strarr[i])*Math.pow(2,in--);
sum += sun;
}
return sum;
}
}
java 二进制和十进制互转
最新推荐文章于 2022-11-09 22:00:16 发布