1. 程式人生 > 實用技巧 >415字串相加

415字串相加

字串的建立

  1、通過初始化的方式建立

    String  str=“Hello”;

  2、通過使用new關鍵字建立

    String  str=new  String("Hello");

堆記憶體與棧記憶體

  Java記憶體分為兩種,一種叫做棧記憶體,一種叫做堆記憶體。

  棧記憶體用來存放變數,堆記憶體用來存放變數的值。

  字串池用來儲存初始化方式產生的字串物件,且字串池中的字串不會重複,也就是相同值的字串的記憶體地址相同

字串的比較

  1、equals():檢查字串內容的字元是否完全一致

  2、==:判斷兩個字串的記憶體地址是否相同

舉例: 

 1
public class StringDemo { 2 public static void main(String args[]) { 3 String str1 = "Hello"; 4 String str2 = new String("Hello"); 5 String str3 = str2; // 引用傳遞 6 String str4 = "Hello"; 7 System.out.println(str1 == str2); // false 8 System.out.println(str1 == str3); //
false 9 System.out.println(str1 == str4); // true 10 System.out.println(str2 == str3); // true 11 System.out.println(str1.equals(str2)); // true 12 System.out.println(str1.equals(str3)); // true 13 System.out.println(str1.equals(str4)); // true 14 System.out.println(str2.equals(str3)); //
true 15 } 16 }

  因為str1和str4都是初始化方式定義的且值相同,所以記憶體地址相同。str2是用new關鍵字定義的,所以記憶體地址與str1不同。str3是str2傳遞過來的,所以記憶體地址相同。

常用方法

  字串的連線

    使用+連線字串   

1 String a="Hello";
2 String b="World";
3 String c=a+b;

    使用String類的concat()方法,語法:A.concat(B),B字串將被連線到A字串後面。

String a="Hello";
String b="World";
String c=a.concat(b);