String類的實例化
相信小夥伴們平常對String類的實例化通常是 直接賦值 的,而很少有人會去通過 構造方法 來進行實例化,就算去 new String(); IDEA也會告訴你,new String() 是冗餘的,兩種實例化的方式所得到的的賦值效果雖然是相同的,但是其中還有些許不同。
// 直接賦值
String str1="Android_小黑";
// 通過構造方法實例化
String str2=new String("Android_小黑");
“==”和equals()的區別
如果我們就上面的 str1 和 str2 來進行比較
System.out.println(str1 == str2);
System.out.println("equals方式:" + str1.equals(str2));
輸出結果:false equals方式:true,這是爲什麼呢?
這是因爲,“==”如果用在String上的話,就是比較String對象的內存地址,str1 和 str2 的內存地址當然不同,所以輸出是false,equals() 則是String類提供的專門對字符串內容進行比較的方法,str1 和 str2 的內容是一樣的,所以輸出的就是 true
String類中常用方法
- char charAt(int index) 獲取指定索引位置的字符
- char[] toCharArray() 把字符串中的所有字符以字符數組形式返回
- boolean equals(String str) 判斷字符串內容是否一樣(分大小寫)
- boolean equalsIgnoreCase(String str) 判斷字符串內容是否一樣(不分大小寫)
- boolean contains(String str) 判斷某字符串是否存在此字符串中(子串判斷)
- int indexOf(String str) 從前往後查找字符串在此字符串中的位置(不存在返回 -1)
- int indexOf(String str , int from) 同上 從from位置開始
- int lastIndexOf(String str) 同上上, 反向查找
- int lastIndexOf(String str , int from) 同上 , 從from開始
- boolean startsWith(String str) 判斷此字符串是否以某字符串開頭
- boolean startsWith(String str ,int to) 同上 從 to 位置開始
- boolean endsWith(String str ) 判斷此字符串是否以某字符串結尾
- String replaceAll(String regex , String rep) 用指定字符串替換指定字符串
- String replaceFirst(String regex , String rep) 用指定字符串替換指定字符串(只替換第一個)
- String[] split(String regex) 指定字符串作爲分割符,進行分割
- String[] split(String regex , int limmit) 同上 (只分割成指定個數)
- String subString(int begin) 從指定位置截取字符串至結尾
- String subString(int begin , int end) 從指定位置截取字符串至指定位置
- boolean isEmpty() 判斷字符串是否爲空
- int length() 獲取字符串長度
- String trim() 去除左右空格
- String toUpperCase() 字符串中的小寫父母全都轉換成大寫字母
- String toLowerCase() 字符串中的大寫父母全都轉換成小寫字母
代碼演示幾個常用方法:
//演示幾個常用的方法
System.out.println(str1.substring(5));//結果:id_小黑
System.out.println(str1.length());//結果: 10
System.out.println(str1.isEmpty());//結果: false
System.out.println(str1.toLowerCase());//結果:android_小黑
System.out.println(str1.toUpperCase());//結果:ANDROID_小黑
String[] strings = str1.split("_");
System.out.println(strings[0]+" "+strings[1]);//結果:Android 小黑
String str3=" 123 ";
System.out.println(str3.trim());//結果:123
覺得對你有幫助的話,點個讚唄~