package api;
public class IntegerApi {
public static void main(String[] args) {
int maxInt = Integer.MAX_VALUE; // 2^31 -1
int minInt = Integer.MIN_VALUE; // -2^31
//System.out.println("maxInt:" + maxInt + " minInt:" + minInt); //maxInt:2147483647 minInt:-2147483648
Integer integer = new Integer(4); // 根据int值构造Integer实例
//System.out.println(integer); // 4
integer = new Integer("3"); // 根据String值构造Integer实例
//System.out.println(integer); // 3
// 静态方法
Integer.min(25, 12); // Math.min(25, 12) 取小值
Integer.max(12, 34); // Math.max(12, 34) 取大值
Integer.sum(17, 23); // 17 + 23 = 40 求和
int n = Integer.signum(-3); // 传入值大于0 返回 1 小于0 返回-1 等于0返回0
//System.out.println(n); // -1
n = Integer.compare(12, 12); // 比较两个值 p1>p2 返回1 p1<p2 返回-1 p1=p2 返回0
//System.out.println(n);
Integer nInteger = Integer.decode("#10"); //0x 0X # 表示16进制 转为Integer
nInteger = Integer.decode("010"); //0 表示8进制 转为Integer
//System.out.println(nInteger);
Integer nInteger2 = Integer.valueOf(23); //
Integer nInteger3 = Integer.valueOf("23"); //
//System.out.println(nInteger2 == nInteger3); // true -128--127 之间都是同一地址
nInteger2 = Integer.valueOf("FF", 16);
//System.out.println(nInteger2);
n = Integer.parseInt("-20"); // String 转 int
//System.out.println(n); // -20
n = Integer.parseInt("-FF", 16); // String 转 int 根据进制规定
//System.out.println(n); // -255
n = Integer.parseUnsignedInt("12", 8); // 无符号 根据基数转成int
//System.out.println(n); // 10
Integer.parseUnsignedInt("12"); // parseUnsignedInt("12", 10);
String sb = Integer.toBinaryString(-1); // Integer 转 二进制String toUnsignedString(-1, 2)
//System.out.println(sb); // 1 反码 1111111111...0(32位) 加1 --- 1111111...111
sb = Integer.toOctalString(12); // toUnsignedString(12, 8) 8 进制
//System.out.println(sb); // 14
sb = Integer.toHexString(12); // toUnsignedString(12, 16) 16进制
//System.out.println(sb); // c
sb = Integer.toUnsignedString(12, 16); // 转16进制String
//System.out.println(sb); //d
sb = Integer.toString(-12, 16); // p2 基数 p2 < 2 或 p2 > 36 则 p2=10
///System.out.println(sb); // -c
n = Integer.bitCount(1234);
//System.out.println(n);
//公有方法
Integer nFirst = new Integer(12);
n = nFirst.compareTo(new Integer(13)); //调用compare()方法 比较大小
//System.out.println(n);
boolean isEquals = nFirst.equals(12); // 比较是否相等
//System.out.println(isEquals); // true
String string = nFirst.toString(); // Integer 转 String
double double1 = nFirst.doubleValue(); // Integer 转 double
float f = nFirst.floatValue(); // Integer 转 float
long l = nFirst.longValue(); // Integer 转 long
int i = nFirst.intValue(); // Integer 转 int
short s = nFirst.shortValue(); // Integer 转 short
nFirst = new Integer(-128);
byte b = nFirst.byteValue(); // Integer 转 byte
//System.out.println(b);
}
}