String對(duì)象是System.Char對(duì)象的有序集合,用于表示字符串。String對(duì)象的值是該有序集合的內(nèi)容,并且該值是不可變的。下面合肥Java培訓(xùn)學(xué)校給大家?guī)?lái)的String的常用方法,一起來(lái)學(xué)習(xí)下吧:
1、length()字符串的長(zhǎng)度
例:charchars[]={'a','b'.'c'};
Strings=newString(chars);
intlen=s.length();
2、charAt()截取一個(gè)字符
例:charch;
ch="abc".charAt(1);返回'b'
3、getChars()截取多個(gè)字符
voidgetChars(intsourceStart,intsourceEnd,chartarget[],inttargetStart)
sourceStart指定了子串開始字符的下標(biāo),sourceEnd指定了子串結(jié)束后的下一個(gè)字符的下標(biāo)。因此,子串包含從sourceStart到sourceEnd-1的字符。接收字符的數(shù)組由target指定,target中開始復(fù)制子串的下標(biāo)值是targetStart。
例:Strings="thisisademoofthegetCharsmethod.";
charbuf[]=newchar[20];
s.getChars(10,14,buf,0);
4、getBytes()
替代getChars()的一種方法是將字符存儲(chǔ)在字節(jié)數(shù)組中,該方法即getBytes()。
5、toCharArray()
6、equals()和equalsIgnoreCase()比較兩個(gè)字符串
7、regionMatches()用于比較一個(gè)字符串中特定區(qū)域與另一特定區(qū)域,它有一個(gè)重載的形式允許在比較中忽略大小寫。
booleanregionMatches(intstartIndex,Stringstr2,intstr2StartIndex,intnumChars)
booleanregionMatches(booleanignoreCase,intstartIndex,Stringstr2,intstr2StartIndex,intnumChars)
8、startsWith()和endsWith()startsWith()方法決定是否以特定字符串開始,endWith()方法決定是否以特定字符串結(jié)束
9、equals()和==
equals()方法比較字符串對(duì)象中的字符,==運(yùn)算符比較兩個(gè)對(duì)象是否引用同一實(shí)例。
例:Strings1="Hello";
Strings2=newString(s1);
s1.eauals(s2);//true
s1==s2;//false
10、compareTo()和compareToIgnoreCase()比較字符串
11、indexOf()和lastIndexOf()
indexOf()查找字符或者子串第一次出現(xiàn)的地方。
lastIndexOf()查找字符或者子串是后一次出現(xiàn)的地方。
12、substring()它有兩種形式,第一種是:Stringsubstring(intstartIndex)
第二種是:Stringsubstring(intstartIndex,intendIndex)
13、concat()連接兩個(gè)字符串
14、replace()替換
它有兩種形式,第一種形式用一個(gè)字符在調(diào)用字符串中所有出現(xiàn)某個(gè)字符的地方進(jìn)行替換,形式如下:
Stringreplace(charoriginal,charreplacement)
例如:Strings="Hello".replace('l','w');
第二種形式是用一個(gè)字符序列替換另一個(gè)字符序列,形式如下:
Stringreplace(CharSequenceoriginal,CharSequencereplacement)
15、trim()去掉起始和結(jié)尾的空格
16、valueOf()轉(zhuǎn)換為字符串
17、toLowerCase()轉(zhuǎn)換為小寫
18、toUpperCase()轉(zhuǎn)換為大寫
19、StringBuffer構(gòu)造函數(shù)
StringBuffer定義了三個(gè)構(gòu)造函數(shù):
StringBuffer()
StringBuffer(intsize)
StringBuffer(Stringstr)
StringBuffer(CharSequencechars)
(1)、length()和capacity()
一個(gè)StringBuffer當(dāng)前長(zhǎng)度可通過(guò)length()方法得到,而整個(gè)可分配空間通過(guò)capacity()方法得到。
(2)、ensureCapacity()設(shè)置緩沖區(qū)的大小
voidensureCapacity(intcapacity)
(3)、setLength()設(shè)置緩沖區(qū)的長(zhǎng)度
voidsetLength(intlen)
(4)、charAt()和setCharAt()
charcharAt(intwhere)
voidsetCharAt(intwhere,charch)
(5)、getChars()
voidgetChars(intsourceStart,intsourceEnd,chartarget[],inttargetStart)
(6)、append()可把任何類型數(shù)據(jù)的字符串表示連接到調(diào)用的StringBuffer對(duì)象的末尾。
例:inta=42;
StringBuffersb=newStringBuffer(40);
Strings=sb.append("a=").append(a).append("!").toString();
(7)、()插入字符串
StringBuffer(intindex,Stringstr)
StringBuffer(intindex,charch)
StringBuffer(intindex,Objectobj)
index指定將字符串插入到StringBuffer對(duì)象中的位置的下標(biāo)。
(8)、reverse()顛倒StringBuffer對(duì)象中的字符
StringBufferreverse()
(9)、()和CharAt()刪除字符
StringBuffer(intstartIndex,intendIndex)
StringBufferCharAt(intloc)
(10)、replace()替換
StringBufferreplace(intstartIndex,intendIndex,Stringstr)
(11)、substring()截取子串
Stringsubstring(intstartIndex)
Stringsubstring(intstartIndex,intendIndex)
例子:
//String所給出的方法均可以直接調(diào)用
publicclassTest{
publicstaticvoidmain(String[]args){
Strings="WelcometoJavaWorld!";
Strings1="sunjava";
System.out.println(s.startsWith("Welcome"));//字符串以Welcome開頭
System.out.println(s.endsWith("World"));//字符串以World結(jié)尾
StringsL=s.toLowerCase();//全部轉(zhuǎn)換成小寫
StringsU=s.toUpperCase();//全部轉(zhuǎn)換成大寫
System.out.println(sL);
System.out.println(sU);
Stringb=s.substring(11);//從第十一位開始
System.out.println(b);
Stringc=s.substring(8,11);//從第八位開始在第十一位結(jié)束
System.out.println(c);
Stringd=s1.trim();//去掉首尾的空格
System.out.println(d);
Strings2="我是程序員,我在學(xué)java";
Stringe=s2.replace("我","你");
System.out.println(e);
intf=5;
Strings3=String.valueOf(f);
System.out.println(s3);
Strings4="我是,這的,大王";
String[]g=s4.split(",");
System.out.println(g[0]);
當(dāng)把字符串轉(zhuǎn)換成基本類型時(shí),例如,int,integer.praseInt(Strings)
當(dāng)把基本類型轉(zhuǎn)換成字符串時(shí),例如,staticStringvalueOf(inti)!