常量池和包裝類緩存

package june22;


public class Test {
public static void main(String[] args) {
  /* 
   * 常量池:若String的值是常量,把String的值放入常量池,所以,s1="23" *s3="23"
* 指向同一個常量,所以s1==s3 true
*/
String s1="23";
// String s2="234"; //將這兩行解開,s1.equals( s3) true 
// String s3=s2.substring(0, 2);     //將這兩行解開,s1  == s3 false  
String s3="23";
System.out.println(s1==s3);    //true
System.out.println(s1.equals(s3));  //true

/*
* 包裝類緩存,將-128~127的數緩存到一個數組中,i1和i2指向的是緩存中的 *數據,所以相等。
* i3和i4指向的是各自對象的內存地址,所以不相等。
*/
Integer i1=127;
Integer i2=127;
Integer i3=128;
Integer i4=128;
System.out.println(i1==i2); //true
System.out.println(i3==i4); //false
}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章