Java基礎學習(五):String類、字符串常見操作

Java基礎學習(五):String類、字符串常見操作

一、String類、字符串

  1. 字符串是常量,創建後其值不可改變,長度也不可變。
String str = "hahaha" ;
  1. 如果不初始化字符串對象,變量就不會指向任何一個內存地址,此時調用會出錯。
  2. 創建一個空字符串可以使用null賦值。
String str = null ;
  1. 初始化字符串
    ·String str = "hahaha"
    ·String str = new String ("hahaha")
    ·string str = String.valueOf(其他任意類型)(用來將其他任意類型的基本數據類型轉化成字符串)
  2. 用字符數組初始化
    ·new String(char[])
    ·new String(char[],int,int)(int,int是截取字符數組當中的int1到int2的字符)
    ·String.valueOf(char[])
    ·String.valueOf(char[],int,int)
public class first {
	public static void main(String[] args) {
			char[] ch = {'h','a','h','a'};
			String s1 = new String(ch);
			String s2 = new  String(ch,1,2);
			String s3 = String.valueOf(ch);
			String s4 = String.valueOf(ch,1,2);
			System.out.println(s1+"\n"+s2+"\n"+s3+"\n"+s4);
	}
}
//-------------輸出---------------
haha
ah
haha
ah

二、字符串的常見操作:拼接

  1. · “ + ”加號用來拼接多個字符串,注意兩邊必須是字符串或者String對象。(右操作數會被強制轉化成String類型)。
    · “ += ”即str += str1 => str = str + str1
    · 字符串.concat(字符串)(返回一個新的對象,不改變原對象本身,必須執行賦值操作)。
  2. 字符長度:字符串.length()
public class first {
	public static void main(String[] args) {
			char[] ch = {'h','a','h','a'};
			String s1 = new String(ch);
			System.out.println(s1.length());
	}
}

三、字符串的常見操作:字符串的索引

  1. charAt()方法:
    使用charAt(int index)方法可以獲取字符串中的指定索引位置的字符,方法入參爲int數值,字符串第一個索引值爲0,最後一個字符索引值爲字符長度減1,返回爲一個char類型。
public class first {
	public static void main(String[] args) {
			String s1 = "hahehrht";
			System.out.println(s1.charAt(1));
	}
}
//-----------輸出-------------
a
  1. indexOf()方法:
    使用indexOf()方法可以返回入參字符在指定String對象中 第一次出現 的索引位置,如果失敗返回-1。
    indexOf()重載有四種:
方法 功能描述
indexOf(int ch) 返回入參字符在指定String對象中第一次出現的索引位置,入參字符爲Unicode編碼
indexOf(int ch , int fromIndex) 從入參索引值 fromIndex開始搜索,返回入參字符在指定String對象中第一次出現的索引位置,入參字符爲Unicode編碼
indexOf(String str) 返回入參字符串在指定String對象中第一次出現的索引位置
indexOf(String str , int fromIdex) 從入參索引值 fromIndex開始搜索,返回入參字符串在指定String對象中第一次出現的索引位置

四、字符串的常見操作:字符串的替換

方法 功能描述
replace(char old , char new) 把old替換爲new,注意是字符串中的old會全部替換爲new,支持正則表達式
replaceAll(String regex , String replacement) 從字符串的首位開始進行搜索,直到尾部,被匹配到的字符,字符串,正則表達式都會被替代
replaceFirst(String regex , String replacement) 從字符串的首位開始進行搜索,直到尾部,被匹配到的字符,字符串,正則表達式只會把第一個匹配的替換

五、字符串的常見操作:字符串的截取

方法 功能描述
substring(int beginIdex) 從入參索引位置開始截取,直到指定String對象結尾
substring(int beginIdex , int endindex) 從入參索引位置開始截取,到endindex-1的位置結束(左閉右開)

六、字符串的常見操作:字符串的分割

方法 功能描述
split(String regex) 將字符串按照一定的規劃分割成字符串數組,可以是“,” 等分隔符,也可以是正則表達式
String[] str = str.split(",");

七、字符串的常見操作:判斷字符串首尾內容,字符串首尾去空格,字符串大小寫轉換

操作 方法 功能描述
判斷字符串首尾內容: startsWith(String prefix) 判斷字符串是否以前綴開始
startsWith(String prfix , int fromidex) 從索引處判斷字符串是否以前綴開始
endsWith(String suffix) 判斷字符串是否以後綴開始
字符串首尾去空格: trim() 返回一個去除字符串首尾空格的字符串
字符串大小寫轉換: toLowerCase() 指定對象中每個字符都轉化成小寫字母
toUpperCase() 定對象中每個字符都轉化成大寫字母

八、字符串的常見操作:字符串比較
Java中,利用“ == ”來比較數據是否相等,而字符串雙等號卻是比較的引用內存地址是否相同。

方法 功能描述
equals(String anotherString) 比較字符串,區分大小寫
equealsIgnoreCase(String anotherString) 比較字符串,不區分大小寫

九、字符串的常見操作:其他字符操作

方法 功能描述
contains(CharSequences) 判斷String對象中是否包含入參字符串,返回布爾值
compareTo(String antherString) 按照ASCLL碼進行比較,如果相同則繼續往後比較,如果不同返回ASCLL的差值
hashCode() 返回該字符串的哈希值
toCharArray() 該方法可以將字符串轉化成一個新的字符數組
toString() 轉化成字符串

十、格式化輸出

format(string str , Objetc...args)
轉換符 說明
%s 字符串類型
%c 字符類型
%b 布爾類型
%d 整數類型(十進制)
%x 整數類型(十六進制)
%o 整數類型(八進制)
%f 浮點類型
%a 十六進制浮點類型
%e 指數類型
%g 通用浮點類型
%% 百分比類型
%n 換行符
%tx 時間如日期類型

例如:

public class first {
	public static void main(String[] args) {
			String s1 = "hahehrht";
			System.out.println(String.format("%s這是一個字符串",s1));
	}
}
//--------------輸出-------------
hahehrht這是一個字符串

format還提供時間格式化的操作:鏈接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章