(1)定义带符号整数的,则可以存储正负整数(正负号直接加在数字前面)
(2)定义无符号整数的,则只可以存储正整数。(数字前面没有正负号,通过最高位1和0区分),用unsigned表示无符号
java中Integer.parseInt(s, radix)解析有符号的整数
Integer.parseUnsignedInt(s, radix)解析无符号的整数(可以解析出正负号)(jdk1.8有这个函数,低版本的直接去Integer源码中把函数拷贝过来)
和硬件通讯的好多数据格式定义为U32、U16、U8 都是无符号的,用Integer.parseUnsignedInt(s, radix)来解析
String string="FFFFFFFB";
System.out.println(Integer.parseUnsignedInt(string, 16)); //=-5