Java での 2 進数から 10 進数への変換
0 と 1 の 2 桁だけからなる数を 2 進数と呼びます。これらは、2 進数の数値体系でのみ表現されます。私たちは、バイナリ システムが現代のコンピューターのネイティブ デジタル言語であることを知っています。しかし、私たちは 10 進数のほうに慣れています。もちろん、2 進数を 10 進数に変換したり、その逆を行うこともできます。下の図は、2 進数から 10 進数への変換の例を示しています。10101 は、数学的計算を説明するために使用される 2 進数です。
- Javaメソッドを使用する
- カスタムロジックの使用
Java 事前構築メソッド
Java には、文字列を整数に変換するためのInteger.parseInt()メソッドが用意されています。parseInt()メソッドはIntegerクラスに属します。構文
public static int parseInt(String binaryNumber, int radix)
例
public class ConvertingBinaryToDecimal {
public static void main(String args[]){
String binaryNumber="10101";
int decimalNumber=Integer.parseInt(binaryNumber,2);
System.out.println(decimalNumber);
}
}
出力
21
カスタムロジックの使用
整数を受け取って 10 進数に変換するプログラムを Java で書くこともできます。それを理解するために例を見てみましょう。例
public class ConvertingBinaryToDecimal {
// function for converting binary to decimal number
public static int getDecimalNumber(int binaryNumber){
int decimalNumber = 0;
int power = 0;
while(binaryNumber > 0){
//taking the rightmost digit from binaryNumber
int temp = binaryNumber%10;
//now multiplying the digit and adding it to decimalNumber variable
decimalNumber += temp*Math.pow(2, power);
//removing the rightmost digit from binaryNumber variable
binaryNumber = binaryNumber/10;
//incrementing the power variable by 1 to be used as power for 2
power++;
}
return decimalNumber;
}
public static void main(String args[]){
System.out.println("Decimal value is: "+getDecimalNumber(111010));
System.out.println("Decimal value is: "+getDecimalNumber(001010));
}
}
出力
10 進値: 58 10 進値: 24
GO TO FULL VERSION