Java有两种方法可以将二进制数转换为十进制数:
1)使用Integer类的Integer.parseInt()方法。
2)自己编写转换逻辑。
方法1:使用Integer.parseInt()实现二进制转换为十进制
import java.util.Scanner; class BinaryToDecimal { public static void main(String args[]){ Scanner input = new Scanner( System.in ); System.out.print("Enter a binary number: "); String binaryString =input.nextLine(); System.out.println("Output: "+Integer.parseInt(binaryString,2)); } }
输出:
Enter a binary number: 1101 Output: 13
方法2:使用自定义逻辑实现二进制转换十进制
public class Details { public int BinaryToDecimal(int binaryNumber){ int decimal = 0; int p = 0; while(true){ if(binaryNumber == 0){ break; } else { int temp = binaryNumber%10; decimal += temp*Math.pow(2, p); binaryNumber = binaryNumber/10; p++; } } return decimal; } public static void main(String args[]){ Details obj = new Details(); System.out.println("110 --> "+obj.BinaryToDecimal(110)); System.out.println("1101 --> "+obj.BinaryToDecimal(1101)); System.out.println("100 --> "+obj.BinaryToDecimal(100)); System.out.println("110111 --> "+obj.BinaryToDecimal(110111)); } }
输出:
110 --> 6 1101 --> 13 100 --> 4 110111 --> 55