String hexStr="FF";
String twoStr="10101010";
String oStr="567";
try{
int hex=Integer.parseInt(hexStr,16);
int two=Integer.parseInt(hexStr,2);
int o=Integer.parseInt(hexStr,8);
System.out.println(hex);
System.out.println(two);
System.out.println(o);
}
catch(NumberFormatException nfe)
{
}

解决方案 »

  1.   

    用Integer类的以下方法:
    static int parseInt(String s, int radix)  
     static String toHexString(int i) 
     static String toOctalString(int i) 
     static String toBinaryString(int i) 
     static String toString(int i) 
     
      

  2.   

    z_yheart(年轻的心) 说得没错,使用 Integer 类就可以搞定.
    同样的道理还可以处理 folat ,long 等类型数据的进制转换
      

  3.   

    用integer类.
    你不太会的话可以查查.
      

  4.   

    我已经试过好多种了如下:System.out.println("ppppp"+Integer.parseInt("3e8",10));
    运行到这里就会出这种错误:
    java.lang.NumberFormatException: 3e8
            at java.lang.Integer.parseInt(Integer.java:414)
    我是其他好多种方法,都不行!!!希望各位多多指点!!!!谢谢!!!!!!!!
      

  5.   

    to: ruoruo(我是一只鱼,java是我的海)System.out.println("ppppp"+Integer.parseInt("3e8",2));   是的,是一样的!报一样的错误!!!
      

  6.   

    System.out.println("ppppp"+Integer.parseInt("3e8",10));3e8是16进制,后面的10应为16。
    public static int parseInt(String s, int radix),第二个参数是进制,请多看看API说明。
      

  7.   

    复人: reagle(孤独剑客) 
    "3e8"能用10为基数解析吗?
    应该这样:(不含异常处理)
    int temp = Integer.parseInt("3e8",16);
    String hexStr = Integer.toHexString(temp);
    String binStr =  Integer.toBinaryString(temp);
    System.out.println("Hex:" +  hexStr );
    System.out.println("Bin:" +  binStr );
      

  8.   

        谢谢谢谢各位tiger_lei(雷老虎) !!!!!!!!
      

  9.   

      是我的理解错误,public static int parseInt(String s, int radix),第二个参数是进制,我以为是我要转化为的进制!谢谢各位指点!!!!!!!!!