java中带符号十六进制转换成十进制详解
public void test1(){
        String strHex="ffff";
            int ia  = Integer.parseInt(strHex,16);
            //不带符号十六进制转换十进制
            System.out.println("ia:  "+ia);
 	        //带符号十六进制转换十进制
            String is=  String.valueOf((Integer.valueOf(strHex, 16).shortValue()));
            System.out.println("is:  "+is);
        }
}
日志输出:
	ia:  65535
	is:  -1   
关于单字、双字、单字节16进制转10进制的简单方法(包含负数)
 String hexshort = "ff9b";
	BigInteger bigint=new BigInteger(hexshort, 16);
	short short1 = bigint.shortValue();//单字
	String hexint = "ffffff9b";
	BigInteger bigint=new BigInteger(hexint, 16);
	int int1 = bigint.intValue();//双字
	String hexbyte = "9b";
	BigInteger bigint=new BigInteger(hexbyte, 16);
	byte byte1 = bigint.byteValue();//单字节
                    
                
                
            
        
浙公网安备 33010602011771号