您好,登錄后才能下訂單哦!
如何理解JavaAPI中的String類,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
JavaAPI之String類
[size=10.5000pt]一、所屬包java.lang.String,沒有子類。特點:一旦被初始化就不可以被改變。
創建類對象的兩種方式:
String s1 = “abc”;
String s1 = new String(“abc”);
內存存在方式:
String Str = “jack”這個語句會先檢查字符串常量池是否存放這個”jack1”這個字符串對象,如果沒有存在,那么就會在字符串常量池中創建這個字符串對象,如果存在直接返回該字符串的內存地址值。
String str3 = new String(“jack”) 該語句會創建兩個對象,首先會先檢查字符串常量池中存不存在jack這個字符串對象,如果不存在就會創建,如果存在就返回內存地址值。創建了出來之后,new String這個語句就會在堆內存中開辟一個字符串對象。總共兩個對象。
注意:equals比較的是對象的內存地址,但是String類復寫了Object類中的equals方法,用于判斷字符串是否相同。s1.equals(s2)為true。
[size=10.5000pt]二、對字符串操作的方法
[size=10.5000pt]1、獲取方法:
1.1:int length() 字符串的長度
1.2:char charAt(int index) 特定位置的字符 (角標越界報錯)
1.3:int indexOf(int ch) 特定字符的位置(overload)(該字符多余1個返回第一個出現的位置)沒有找到返回-1
Int indexOf(int ch,int fromIndex) 從指定位置開始搜索
int indexOf(String str) 子字符的位置(overload)
Int indexOf(iString str,int fromIndex) 從指定位置開始搜索
1.4:int lastIndexOf(int ch) 最后一個字符的位置
[size=10.5000pt]2、判斷方法:
2.1:字符串是否包含某個子串
boolean contains(CharSequences) CharSequences字符序列也可以用int indexOf(String str),返回-1說明不包含。
2.2是否以指定內容開頭 Boolean startsWith(String str)
2.3是否以指定內容結尾 boolean endsWith(String str)
2.4是否為空 boolean isEmpty()是否長度為0 如:“” null V1.6
2.5是否相等 boolean equals(Object anObject) 是否相等
boolean equalsIgnoreCase(String anotherString) 忽略大小寫是否相等
[size=10.5000pt]三、轉換功能
3.1:將字符數組轉成字符串
1)構造函數:String (char[])
String (char[],offset,count)將字符數組一部分轉成字符串(offset開始,count個數)
例:
Char[] arr = {‘a’,‘b’,‘c’,‘d’,‘e’};
String str = new String (arr,1,3);
[size=10.5000pt] 2)靜態方法:
[size=10.5000pt] 3)Static String copyValue Of(char[])
[size=10.5000pt] 4)Static String copyValue Of(char[],offset,count)
Static String Value Of(char[])
3.2:將字符串轉成字符數組
Char[] toCharArray();
3.3將字節數組轉成字符串
String (byte[])
String(byte[],offset,count)
3.4字符串轉成字節數組
Byte[] getBytes();
3.5:將基本數據類型轉成字符串
Static String Value Of(int)
Static String Value Of(double)
2+””
四、替換方法
String replace(char old,char,new);
String s=”hello java”; String s1 = s.replace(e,k); s為hello java, s1 為hkllo java
String s1 = s.replace(“java”,”word”);
[size=10.5000pt]五、切割方法
String[] split(regex);
[size=10.5000pt]六、子串,獲取
String substring(int beginindex,int endindex)包含頭不包含尾
String substring(int begin)
[size=10.5000pt]七、轉換、去除空格、比較
7.1:大小寫轉換
String toUpperCase();
String toLowerCase();
7.2:去除兩端多個空格
String trim();
7.3對兩個字符串自然順序比較
Int CompareTo() 等于0 小于 負數 大于-正數 比較的ASCII
看完上述內容,你們掌握如何理解JavaAPI中的String類的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。