1. 程式人生 > 其它 >String類:建立方式與常用方法

String類:建立方式與常用方法

建立方式分為:字面量建立與構造器物件建立,String類的特點是不可變性,

 1 package CommonClass;
 2 
 3 import org.junit.Test;
 4 
 5 /**
 6  * String類的使用:
 7  * 一:
 8  * 1:String類是final不可繼承的太監類
 9  * 2:String類實現了Comparable介面,所以字串可以比較大小
10  * 3:String類定義了final char[] value 用於儲存字串資料
11  * 4:String類代表不可變的字元序列,成為不可變性
12  *   體現: 1:對於字串重新賦值時,需要重寫指定記憶體區域,不可以在原有的基礎上進行賦值
13 * 2:對於現有的字串進行拼接操作時,也需要重新指定記憶體區域, 14 * 3:呼叫replace方法也是建立一個新的字串,原有的字串不會改變 15 **************************** 16 * 二:String類物件的建立: 17 * 1:String name="hpp";:通過字面量定義的方式 18 * 2:String s=new String(); 通過構造器的方式定義 19 * 3:String s1=new String(original value) 也是構造器 20 * // String s1="abc" 與String s2=new String("abc")的區別:
21 * s1 的abc放在字串常量池中,s2的abc放在堆中 22 **************************** 23 * 三:String字面量的拼接: 24 * 結論:有變數名參與的拼接操作在堆空間中地址值不相等,兩個字面量的拼接還在常量池中就相等 25 */ 26 public class StringTest { 27 @Test 28 public void test1(){ 29 String s1="hp"; 30 String s2="hpp"; 31 s1="hpp"; 32 System.out
.println(s2==s1); 33 //拼接操作 34 String s3="huang"; 35 String s4=s3+"132612"; 36 System.out.println(s4); 37 //呼叫replace方法 38 String s5=s3.replace('h','p'); 39 System.out.println(s5); 40 } 41 @Test 42 public void test2(){ 43 String name="123";//字面量定義的方式 44 String name1=new String("123");//構造器定義的方式 45 String name2=new String("123"); 46 String name3=name+"hpp"; 47 System.out.println(name==name1);//兩種不同的例項化方式物件的地址值不一樣 48 System.out.println(name1==name2);//兩個物件的地址值是不一樣的 49 System.out.println(name==name3);//對於有變數名參與的拼接地址值不一樣 50 } 51 }

String類常用方法:length,replace替換,charAt獲取指定位置的字元,isEmpty字串是否為空,

tolowercase,touppercase轉換大小寫,compareto比較字串大小:ASCII碼

 1 /**
 2  * String類的常用方法:
 3  * 1:int length():獲取字串長度
 4  * 2:char charAt(index):獲取指定位置上的字元
 5  * 3:boolean isEmpty():判斷字串時是否為空
 6  * 4:toLowercase():變成小寫
 7  * 5:toUppercase():變成大寫
 8  * 6:compareTo(String str2):比較兩個字串大小(比較ASCII碼值)從前往後匹配,只要匹配到一個字串不同就停止
 9  * 輸出ASCII碼的差值
10  * 7:boolean StartWith(String str):判斷是否以指定的字串為字首
11  * 8:boolean EndsWith(String str):判斷是否以指定的字串為字尾
12  * 9:int indexOf(String str):從左往右返回指定字串在當前字串的索引位置
13  * 10:int lastIndexOf(String str):從右往左返回
14  * 11:String replace(oldChar'',newChar''):將字串中指定的的單個字元全部替換
15  * 12:String replace(target"",replacement""):將字串中指定的的字串全部替換
16  * 13:
17  *
18  *
19  */
20 public class StringMethodsTest {
21     @Test
22     public  void test1(){
23         String s="Huang";//a=65,A=97
24         String s3="GuAn";
25         String ss="Huang132ang@";
26         System.out.println(ss.replace("ang","黃鵬"));
27         System.out.println(ss.startsWith("Hua"));
28         System.out.println(ss.indexOf("u"));
29         System.out.println(s.length());
30         System.out.println(s.charAt(4));
31         System.out.println(s.isEmpty());
32         String s1=s.toLowerCase();
33         String s2=s.toUpperCase();
34         System.out.println(s1+"\t"+s2);
35         System.out.println(s.compareTo(s3));
36     }
37 }