Java入门:基础算法之二进制转换为十进制

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

 

posted @ 2016-04-05 22:06  盆古  阅读(56599)  评论(0编辑  收藏  举报