1. decimalToBinary : 將數字除2求餘數與商,新增一個字串將每次的餘數串到最前面,商則覆蓋原本數字直到為0,跳出迴圈,返回二進位數字字串。
2. binaryToDecimal : 將二進位字串從第一個字元到最後一個依序個別乘上2的(字串長度-1)次方直到0次方,並相加,返回相加之後的十進位數字。
public static String decimalToBinary(int n){
String str = "";
while(n!=0){
str = n%2+str;
n = n/2;
}
return str;
}
public static int binaryToDecimal(String binStr){
int sum = 0;
int len = binStr.length();
for (int i=1;i<=len;i++){
int dt = Integer.parseInt(binStr.substring(i-1,i));
sum+=(int)Math.pow(2,len-i)*dt;
}
return sum;
}
使用函式 :
String bsapi = Integer.toBinaryString(num);
int diapi = Integer.parseInt(bsapi,2);
沒有留言:
張貼留言