天天看點

JAVA包裝類型

關于JAVA包裝類型

你需要知道如下幾點:

1.不可變的,同String

2.是對象

3.又的包裝類型存在Cache緩存,這個見如下例子:

在此處涉及自動打包操作,将int類型自動打包成Integer類型。而自動打包規範要求boolean,byte,char<=127,介于-128~127之間的short和int被包裝到固定的對象中,即同一記憶體區域。 為避免此類問題,建議使用equals方法比較對象是否相等,而不是用==運算符比較對象是否相同

Long l1=l,l2=l,l3=l,l4=l;
            System.out.println(l1==l2);//true
            System.out.println(l3==l4);//false

            Integer i1=,i2=,i3=,i4=;
            System.out.println(i1==i2); //true
            System.out.println(i1.equals(i2));//true
            System.out.println(i3==i4);//false
            System.out.println(i3.equals(i4));//true
            System.out.println(i1==);//true
            System.out.println(i4==);//true


            Float F1=f,F2=f;
            System.out.println(F1==F2);//false
            System.out.println(F1==f);//true

            float f1=f,f2=f;
            System.out.println(f1==f2);//true

            String a="123";
            String b="123";
            String c=new String("123");
            System.out.println(a==b);//true
            System.out.println(c==b);//false