文章目錄
前言
String 類是我們日常經常使用的Java類,以下是對該類的信息彙總,類的關係圖如下
創建:
String s="hello!";//使用字符串常量直接初始化
new String();//使用構造方法創建並初始化一個對象,表示空字符序列
String(value);//利用已存在的字符串常量創建一個新的對象
String(char[] value);//利用一個字符數組創建一個字符串
String(char[] value,int offset,int count);//截取字符數組offset到count的字符創建一個非空串
String(StringBuffer buffer);//利用StringBuffer對象初始化String對象
String類主要方法的使用:
一、獲取長度
public int length();
// 這與數組中的length
屬性獲取長度不同
二、比較相等
==
//判斷內容與地址是否相同public boolean equals(Object anObject);
//判斷內容是否相同public boolean equalsIgnoreCase(String anotherString);
//忽略大小寫的情況下判斷內容是否相同- 如果想對字符串中的部分內容是否相同進行比較,可以用
reagionMatches()
有兩種public boolean regionMatches(int toffset, String other,int ooffset,int len);
表示如果String
對象的一個子字符串與參數other的一個子字符串是相同的字符序列,則爲true
.要比較的String
對象的字符串從索引toffset
開始,other
的字符串從索引ooffset
開始,長度爲len
。public boolean reagionMatches(boolean ignoreCase,int toffset,String other,int ooffset,int len);
//用布爾類型的參數指明兩個字符串的比較是否對大小寫敏感。
三、比較大小
public int compareTo(String anotherString);
//判斷字符串的大小關係public int compareToIgnoreCase(String str);
//在比較時忽略字母大小寫
四、查找字符串中某個位置的字符
public char charAt(int index);
//返回指定索引index
位置上的字符,索引範圍從0開始
五、查找指定字符串在字符串中第一次或最後一詞出現的位置
- 在String類中提供了兩種查找指定位置的字符串第一次出現的位置的方法
public int indexOf(String str);
//從字符串開始檢索str
,並返回第一次出現的位置,未出現返回-1public int indexOf(String str,int fromIndex);
//從字符串的第fromIndex
個字符開始檢索str
- 查找最後一次出現的位置有兩種方法
public int lastIndexOf(String str);
public int lastIndexOf(String str,int fromIndex);
- 如果不關心字符串的確切位置則可使用
public boolean contains(CharSequence s);
六、檢查字符串的起始字符和結束字符
- 開始的字符串兩種方法
public boolean starWith(String prefix,int toffset);
//如果參數prefix
表示的字符串序列是該對象從索引toffset
處開始的子字符串,則返回truepublic boolean starWith(String prefix);
- 結束的字符串方法
public boolean endsWith(String suffix);
七、截取子串
public String subString(int beginIndex);
// 返回以beginIndex
開頭直至該字符串結尾的串public String subString(int beginIndex,int endIndex);
//返回的字符串是從beginIndex
開始到endIndex-1
的串,要返回後4位可以這樣寫Syetem.out.println(*.subString()(*.length()-4));
八、字符串的替換
public String replace(char oldChar,char newChar);
public String replace(CharSequence target,CharSequence replacement);
//把原來的etarget子序列替換爲replacement序列,返回新串public String replaceAll(String regex,String replacement);
//用正則表達式實現對字符串的匹配
九、字符串的大小寫替轉換
public String toLowerCase(Locale locale);
public String toLowerCase();
public String toupperCase(Locale locale);
public String toUpperCase();
十、去除字符串首尾空格
public String trim();
十一、字符串轉換
-
1、將字符串轉換成字符數組
public char[] toCharArray();
-
2、將字符串轉換成字符串數組
public String[] split(String regex);
//regex 是給定的匹配
-
3、將其它數據類型轉化爲字符串
public static String valueOf(boolean b);
public static String valueOf(char c);
public static String valueOf(int i);
public static String valueOf(long i);
public static String valueOf(float f);
public static String valueOf(double d);
public static String valueOf(char[] data);
public static String valueOf(Object obj);
-
4、可變字符串的創建和初始化,兩種方法:
public StringBuffer();
public StringBuffer(int caoacity);
StringBuffer類主要方法的使用:
一、獲取可變字符串長度
public int length();
public int capacity();
public void setLength(int newLength);
二、比較可變字符串
用String
類的equals()
方法比較,但是不同。類Object
中的equals()
方法比較的是兩個對象的地址是否相等,而不僅僅是比較內容,但是String
類在繼承Object
類的時候重寫了equals()
方法,只是比較兩個對象的內容是否相等,而在StringBuffer
類中沒有重寫Object
類的equals()
方法,所以比較的是地址和內容。
三、追加和插入字符串
- 追加
public StringBuffer append(type t);
- 插入
public StringBuffer insert(int offset,type t);
//在offset處加入類型爲type的字符串
四、反轉和刪除字符串
- 反轉
public StringBuffer reverse();
- 刪除
public StringBuffer delete(int start,int end);
五、減少用於可變字符序列的存儲空間
public void trimToSize();
六、StringBuffer類轉換成String類
public String toString();
歡迎關注我的公衆號【小狐狸與小兔子】,日常分享工作、技術、學習、生活等隨筆