1. 程式人生 > >Java面向對象-- String 類

Java面向對象-- String 類

clas orm img 面向 public div string 通過 --

1,實例化String對象 ,

有兩種方式,我們直接看代碼:

package com.java1234.chap03.sec08;
 
public class Demo1 {
 
    public static void main(String[] args) {
        // 實例化String的方式一
        String name1="張三";
        System.out.println("name1="+name1);
         
        // 實例化String的方式二
        String name2=new String("李四");
        System.out.println(
"name2="+name2); } }

運行輸出:

name1=張三

name2=李四

2,“==”VS“equals方法”

“==” 比較的是引用(是否指向同一個內存塊) “equals”比較的是具體內容



package com.java1234.chap03.sec08;
 
public class Demo2 {
 
    public static void main(String[] args) {
        String name1="張三";  // 直接賦值方式
        String name2=new String("張三"); // new方式
        String name3=name2; //
傳遞引用 // ==比較的是引用 System.out.println("name1==name2:"+(name1==name2)); System.out.println("name1==name3:"+(name1==name3)); System.out.println("name2==name3:"+(name2==name3)); // equals比較的是具體內容 System.out.println("name1.equals(name2):"+(name1.equals(name2))); System.out.println(
"name1.equals(name3:"+(name1.equals(name3))); System.out.println("name2.equals(name3):"+(name2.equals(name3))); } }

運行輸出:

name1==name2:false

name1==name3:false

name2==name3:true

name1.equals(name2):true

name1.equals(name3:true

name2.equals(name3):true

技術分享圖片

3,String兩種實例化方式的區別

直接賦值方式,創建的對象存放到字符串對象池裏,假如存在的,就不會再創建;

new對象方式,每次都創建一個新的對象;

package com.java1234.chap03.sec08;
 
public class Demo3 {
 
    public static void main(String[] args) {
        String name1="張三";
        String name2="張三";
        String name3=new String("張三");
        String name4=new String("張三");
         
        System.out.println("name1==name2:"+(name1==name2));
        System.out.println("name1==name3:"+(name1==name3));
        System.out.println("name3==name4:"+(name3==name4));
    }
     
}

運行輸出:

name1==name2:true

name1==name3:false

name3==name4:false

技術分享圖片

 

4,字符串的內容不可變性

字符串的特性:不能改變字符串的內容;

要想改變,只能通過指向一個新的內存地址;

package com.java1234.chap03.sec08;
 
public class Demo4 {
 
    public static void main(String[] args) {
        String name="張";
        name+="三";
        System.out.println(name);
    }
}

技術分享圖片

Java面向對象-- String 類