Binary 110 -> Decimal 6
1*(2^2) + 1*(2^1) + 0*(2^0)
实在不行的话,你可以按照上面的计算方法自己封装一个方法.
做了一个例子:
public class Test {
        public static void main(String[] args) {
                System.out.println("i="+binaryToDecimal("110"));
                System.out.println("i="+binaryToDecimal("111"));
                System.out.println("i="+binaryToDecimal("1111"));
        }        public static int binaryToDecimal(String value) {
                int result = 0;
                int length = value.length();
                for ( int i=0; i<length; i++ ) {
                        int b = Integer.parseInt(value.substring(i,i+1));
                        result += b * (int)Math.pow(2, length-i-1);
                }
                return result;
        }
}
没有做异常处理.这种方法可以实现没有问题,不记着还有没有更好的方法.
我记着有现成的软件包已经完成了此功能,上网找吧.

解决方案 »

  1.   

    自己太土了.查了一下文档,java.lang.Integer就已经可以做这样的转换了.
    public static int parseInt(String s,
                               int radix)
                        throws NumberFormatException
    不好意思,楼主的问题还是照这个做吧.
      

  2.   

    用这个也行
    String str="110";
    int i=Integer.parseInt(str,10);//10代表10进制
      

  3.   

    上面有误阿,sorry

    String str="110";
    int i=Integer.parseInt(str,10).intValue();//10代表10进制
      

  4.   

    int i=Integer.parseInt(str,10).intValue();