```java public class IntegerDemo1 {
    public static void main(String[] args) {
    /*
    public Integer(int value) 把int类型的数据封装成Integer类型的对象(已经废除)
    public Integer(String s) 把String类型的数据封装成Integer类型的对象(已经废除)
    public static Integer valueOf(int i) 把int类型的数据封装成Integer类型的对象
   public static Integer valueOf(String s) 把String类型的数据封装成Integer类型的对象
   public static Integer valueOf(String s,int radix) 把String类型,按相应的进制封装成Integer类型的对象
     */

        //创建Integer对象
        Integer i1=new  Integer(10);
        Integer i2=new  Integer("10");
        System.out.println(i1);
        System.out.println(i2);
        Integer i3 = Integer.valueOf(100);
        Integer i4=Integer.valueOf("1000");
        System.out.println(i3);
        System.out.println(i4);

        Integer i5=Integer.valueOf("1000",16);
        System.out.println(i5);//4096

        //两种创建对象的区别
        Integer i6=new  Integer(10);
        Integer i7=new  Integer(10);
        System.out.println(i6==i7);//false
        //再-128~127之间的数,会直接返回对象,不会重新创建对象
        //在-128~127之外的数,会重新创建对象
        Integer i8=Integer.valueOf(100);
        Integer i9=Integer.valueOf(100);
        System.out.println(i8==i9);//true
        Integer i10=Integer.valueOf(129);
        Integer i11=Integer.valueOf(129);
        System.out.println(i10==i11);//false

        //JDK5之后,出现了自动拆箱和自动装箱
        //自动拆箱:把Integer类型的对象,转换成int类型的数据
        //可以直接定义Integer类型的变量,不需要使用new关键字
        Integer i12=10;
        Integer i13=10;
        System.out.println(i12==i13);//true
        Integer i14=129;
        Integer i15=129;
        System.out.println(i14==i15);//false
        //包装类的计算
        System.out.println(i1+i2);
    }

}

public class IntegerDemo2 {
public static void main(String[] args) {

    /*
    public static String toBinaryString(int i) 得到二进制
    public static String toOctalString(int i) 得到八进制
    public static String toHexString(int i) 得到十六进制
    public static int parseInt(String s) 把字符串转换为int类型
    */
    //转换进制
    String s1=Integer.toBinaryString(666);
    System.out.println(s1);//1010011010
    String s2=Integer.toOctalString(666);
    System.out.println(s2);//1232
    String s3=Integer.toHexString(666);
    System.out.println(s3);//29a

    //类型转换
    int i=Integer.parseInt("666");
    System.out.println(i+520);//1186

    //除了Character,其他的包装类都有parsexxx方法,进行类型转换
    String str="true";
    boolean flag=Boolean.parseBoolean(str);
    System.out.println(flag);
}

}