------- <a href="http://www.itheima.com" target="blank">android培訓</a>、<a href="http://www.itheima.com" target="blank">java培訓</a>、期待與您交流! ----------
字符串
Java 將字符串作爲對象來處理。
String 位於java.lang包中。
字符串一旦被初始化,就不能再改變。
String str;聲明
創建
String str="abc";引用字符串常量
String(char[] ar)
String(char[] ar value)
String(char[] ar,int offset,int length)
字符串連接
只要“+”運算符的一個操作數是字符串,編譯器就會把另一個操作數也轉換成字符串。
String方法:
1--有關獲取
int length() 返回長度
int indexOf(String s) 返回索引 (找不到返回-1)
int lastIndexOf(String s) 返回索引 (找不到返回-1,s爲""時,返回length)
char charAt(int index) 返回字符
2--有關判斷
String replace(char oldChar,char newChar) 替換字符並返回新字符串 (找不到oldChar,返回原字符串)
boolean startsWith(String s) 判斷是否以s開頭
boolean endsWith(String s)判斷是否以s結尾
boolean equals(String s)判斷兩串是否相等3--有關轉換
構造函數String(char[] ar)
String(char[] ar,int offset,int count)
String(byte[] ar,int offset,int length)
靜態方法copyValueOf(...) (參數與上面的構造函數一樣)
靜態方法valueOf(...) (參數有 intlongfloatdoubleboolean charchar[]char[],offset,countobject)
字符串變字符數組 toCharArray()
字符串變字節數組 getBytes()
4--有關改造字符串並返回新串
String trim() 去空格
String substring(int beginindex) 返回子串
String substring(int beginindex,int endindex) 返回子串
String replace(char a,char b)String replace(String a,String b) b把a換掉找不到a就返回原串
String toUpperCase() 返回大寫化後的新字符串
String toLowerCase() 返回小寫化後的新字符串
String [] split(String sign) 按sign分割成字符串數組並返回該數組(sign 匹配正則表達式)
String [] split(String sign,int limit) limit是分割後的段數(sign 匹配正則表達式)
5--比較方法
int compareTo(String s)按Unicode碼順序比較將字符串大小,結果是this的碼值減去s的碼值。
字符串生成器
StringBuffer 字符可變序列,不同於String通過new新對象對字符串進行改變的操作方式,StringBuffer只對自身進行增加、刪除、修改等操作。因此在進行這些操作時StringBuffer比String高效。
增加
append(...) 多種重載
insert(...) 多種重載
刪除
delete(int start,int end)
deleteCharAt(int index)
修改
setCharAt(int index)
獲取
void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin)
StringBuffer是多線程安全的,但會增加檢查的工作。
JDK1.5後增加了爲單線程增加了StringBuilder,它不是線程安全的,但更加快速。
建議用StringBuilder,需要時加安全鎖。