1.string
string類是對字串事物的描述。
舉例:string s1 = "abc";//s1是乙個類型別變數, "abc"是乙個物件。字串最大特點:一旦被初始化就不可以被改變。
string s2 = new string("abc");
s1和s2有什麼區別?s1在記憶體中有乙個物件。s2在記憶體中有兩個物件。
2.string常見的操作
(1)獲取。
1.1 字串中的包含的字元數,也就是字串的長度。
int length():獲取長度。
1.2 根據位置獲取位置上某個字元。
char charat(int index):
1.3 根據字元獲取該字元在字串中位置。
int indexof(int ch):返回的是ch在字串中第一次出現的位置。
int indexof(int ch, int fromindex) :從fromindex指定位置開始,獲取ch在字串中出現的位置。
int indexof(string str):返回的是str在字串中第一次出現的位置。
int indexof(string str, int fromindex) :從fromindex指定位置開始,獲取str在字串中出現的位置。
int lastindexof(int ch) :
(2)判斷。
2.1 字串中是否包含某乙個子串。
boolean contains(str):
特殊之處:indexof(str):可以索引str第一次出現位置,如果返回-1.表示該str不在字串中存在。所以,也可以用於對指定判斷是否包含。if(str.indexof("aa")!=-1)而且該方法即可以判斷,有可以獲取出現的位置。
2.2 字元中是否有內容。
boolean isempty(): 原理就是判斷長度是否為0.
2.3 字串是否是以指定內容開頭。
boolean startswith(str);
2.4 字串是否是以指定內容結尾。
boolean endswith(str);
2.5 判斷字串內容是否相同。複寫了object類中的equals方法。
boolean equals(str);
2.6 判斷內容是否相同,並忽略大小寫。
boolean equalsignorecase();
(3)轉換。
3.1 將字元陣列轉成字串。
建構函式:string(char)
string(char,offset,count):將字元陣列中的一部分轉成字串。
靜態方法:
static string copyvalueof(char);
static string copyvalueof(char data, int offset, int count)
static string valueof(char):
3.2 將字串轉成字元陣列。**
char tochararray():
3.3 將位元組陣列轉成字串。
string(byte)
string(byte,offset,count):將位元組陣列中的一部分轉成字串。
3.4 將字串轉成位元組陣列。
byte getbytes():
3.5 將基本資料型別轉成字串。
static string valueof(int)
static string valueof(double)
//3+"";
特殊:字串和位元組陣列在轉換過程中,是可以指定編碼表的。
(4)替換 string replace(oldchar,newchar);如果要替換的字元不存在,返回的還是原串。
(5)切割 string split(regex);
(6)子串。獲取字串中的一部分。string substring(begin); string substring(begin,end);從指定位置開始到結尾。如果角標不存在,會出現字串角標越界異常。
(7)轉換,去除空格,比較。
7.1 將字串轉成大寫或則小寫。
string touppercase();
string tolowercase();
7.2 將字串兩端的多個空格去除。
string trim();
7.3 對兩個字串進行自然順序的比較。
int compareto(string);
3.stringbuffer和stringbuilder
stringbuffer是字串緩衝區。是乙個容器。
特點:1,長度是可變化的。2,可以位元組操作多個資料型別。3,最終會通過tostring方法變成字串。
2,刪除。
stringbuffer delete(start,end):刪除緩衝區中的資料,包含start,不包含end。
stringbuffer deletecharat(index):刪除指定位置的字元。
sb.delete(0,sb.length());清空緩衝區。
3,獲取。
char charat(int index)
int indexof(string str)
int lastindexof(string str)
int length()
string substring(int start, int end)
4,修改。
stringbuffer replace(start,end,string);
void setcharat(int index, char ch) ;
5,反轉。stringbuffer reverse();
6,將緩衝區中指定資料儲存到指定字元陣列中。void getchars(int srcbegin, int srcend, char dst, int dstbegin)
jdk1.5 版本之後出現了stringbuilder.stringbuffer是執行緒同步。stringbuilder是執行緒不同步。以後開發,建議使用stringbuilder
公升級三個因素:
1,提高效率。
2,簡化書寫。
3,提高安全性。
4.基本資料型別物件包裝類
基本資料型別物件包裝類。
byte byte
shortshort
intinteger
long long
boolean boolean
float float
doubledouble
char character
基本資料型別物件包裝類的最常見作用,就是用於基本資料型別和字串型別之間做轉換。
1.基本資料型別轉成字串。
基本資料型別+""
基本資料型別.tostring(基本資料型別值);
如: integer.tostring(34);//將34整數變成"34"
2.字串轉成基本資料型別。
*** a = ***.par***xx(string);
integer i = new integer("123");
int num = i.intvalue();
3.十進位制轉成其他進製。tobinarystring(); tohexstring(); tooctalstring();
4.其他進製轉成十進位制。parseint(string,radix);
面試中注意的問題:
jdk1.5版本以後出現的新特性。
integer x = 4;//自動裝箱。//new integer(4)
x = x + 2;//x+2:x 進行自動拆箱。變成成了int型別。和2進行加法運算。再將和進行裝箱賦給x。
integer a = 127;
integer b = 127;
sop("a==b:"+(a==b));//結果為true。因為a和b指向了同乙個integer物件。
//因為當數值在byte範圍內容,對於新特性,如果該數值已經存在,則不會在開闢新的空間。
黑馬程式設計師 字串函式
windows phone 7手機開發 net培訓 期待與您交流!tolower 得到字串的小寫形式。toupper 得到字串的大寫形式。trim 去掉字串兩端空格。equals 比較倆個字串 區分大小寫比較 split 將字串按照指定的分隔符或者字串進行分割成字串陣列。replace 字串替換。s...
黑馬程式設計師 字串處理
asp.net android io開發s net培訓 期待與您交流!字串處理 1 字串中的轉義字元 轉義字元 當需要在字串中輸入特殊的字元時 半形引號,退格,換行 需要轉義字元 幾種轉義字元 1 n 換行 2 b backspace 鍵盤上的回退鍵 退格,刪除 3 t tab 有多個空格組成,行與...
黑馬程式設計師 C 字串處理
windows phone 7手機開發 net培訓 期待與您交流!字串常用函式 substring contains indexof startswith endswith split 應用舉例 string s 定義乙個字串 string 網域名稱 s.substring 7 從指定序號開始到最後...