java string常用方法
java string常用方法
Java平臺(tái)和語言最開始只是SUN公司在1990年12月開始研究的一個(gè)內(nèi)部項(xiàng)目。下面是學(xué)習(xí)啦小編為您帶來的java string 常用方法,希望對(duì)大家有所幫助。
java string 常用方法:
1、length() 字符串的長(zhǎng)度
例:char chars[]={'a','b'.'c'};
String s=new String(chars);
int len=s.length();
2、charAt() 截取一個(gè)字符
例:char ch;
ch="abc".charAt(1); 返回'b'
3、 getChars() 截取多個(gè)字符
void getChars(int sourceStart,int sourceEnd,char target[],int targetStart)
sourceStart指定了子串開始字符的下標(biāo),sourceEnd指定了子串結(jié)束后的下一個(gè)字符的下標(biāo)。因此, 子串包含從sourceStart到sourceEnd-1的字符。接收字符的數(shù)組由target指定,target中開始復(fù)制子串的下標(biāo)值是targetStart。
例:String s="this is a demo of the getChars method.";
char buf[]=new char[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è)重載的形式允許在比較中忽略大小寫。
boolean regionMatches(int startIndex,String str2,int str2StartIndex,int numChars)
boolean regionMatches(boolean ignoreCase,int startIndex,String str2,int str2StartIndex,int numChars)
8、startsWith()和endsWith() startsWith()方法決定是否以特定字符串開始,endWith()方法決定是否以特定字符串結(jié)束
9、equals()和==
equals()方法比較字符串對(duì)象中的字符,==運(yùn)算符比較兩個(gè)對(duì)象是否引用同一實(shí)例。
例:String s1="Hello";
String s2=new String(s1);
s1.eauals(s2); //true
s1==s2;//false
10、compareTo()和compareToIgnoreCase() 比較字符串
11、indexOf()和lastIndexOf()
indexOf() 查找字符或者子串第一次出現(xiàn)的地方。
lastIndexOf() 查找字符或者子串是后一次出現(xiàn)的地方。
12、substring() 它有兩種形式,第一種是:String substring(int startIndex)
第二種是:String substring(int startIndex,int endIndex)
13、concat() 連接兩個(gè)字符串
14 、replace() 替換
它有兩種形式,第一種形式用一個(gè)字符在調(diào)用字符串中所有出現(xiàn)某個(gè)字符的地方進(jìn)行替換,形式如下:
String replace(char original,char replacement)
例如:String s="Hello".replace('l','w');
第二種形式是用一個(gè)字符序列替換另一個(gè)字符序列,形式如下:
String replace(CharSequence original,CharSequence replacement)
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(int size)
StringBuffer(String str)
StringBuffer(CharSequence chars)
(1)、length()和capacity()
一個(gè)StringBuffer當(dāng)前長(zhǎng)度可通過length()方法得到,而整個(gè)可分配空間通過capacity()方法得到。
(2)、ensureCapacity() 設(shè)置緩沖區(qū)的大小
void ensureCapacity(int capacity)
(3)、setLength() 設(shè)置緩沖區(qū)的長(zhǎng)度
void setLength(int len)
(4)、charAt()和setCharAt()
char charAt(int where)
void setCharAt(int where,char ch)
(5)、getChars()
void getChars(int sourceStart,int sourceEnd,char target[],int targetStart)
(6)、append() 可把任何類型數(shù)據(jù)的字符串表示連接到調(diào)用的StringBuffer對(duì)象的末尾。
例:int a=42;
StringBuffer sb=new StringBuffer(40);
String s=sb.append("a=").append(a).append("!").toString();
(7)、insert() 插入字符串
StringBuffer insert(int index,String str)
StringBuffer insert(int index,char ch)
StringBuffer insert(int index,Object obj)
index指定將字符串插入到StringBuffer對(duì)象中的位置的下標(biāo)。
(8)、reverse() 顛倒StringBuffer對(duì)象中的字符
StringBuffer reverse()
(9)、delete()和deleteCharAt() 刪除字符
StringBuffer delete(int startIndex,int endIndex)
StringBuffer deleteCharAt(int loc)
(10)、replace() 替換
StringBuffer replace(int startIndex,int endIndex,String str)
(11)、substring() 截取子串
String substring(int startIndex)
String substring(int startIndex,int endIndex)
Java語言的基本含義:
抽象類:規(guī)定一個(gè)或多個(gè)抽象方法的類別本身必須定義為abstract,抽象類只是用來派生子類,而不能用它來創(chuàng)建對(duì)象。
final類:又稱“最終類”,它只能用來創(chuàng)建對(duì)象,而不能被繼承,與抽象類剛好相反,而且抽象類與最終類不能同時(shí)修飾同一個(gè)類。
包:Java中的包是相關(guān)類和接口的集合,創(chuàng)建包須使用關(guān)鍵字package。
繼承:Java作為面向?qū)ο缶幊陶Z言,支持繼承這基本概念。但Java只支持單根繼承,java.lang.Object是所有其他類的基類。
多態(tài)類:在Java中,對(duì)象變量是多態(tài)的。而Java中不支持多重繼承。
接口:Java中的接口是一系列方法的聲明,是一些方法特征的集合,一個(gè)接口只有方法的特征沒有方法的實(shí)現(xiàn),因此這些方法可以在不同的地方被不同的類實(shí)現(xiàn),而這些實(shí)現(xiàn)可以具有不同的行為。
通用編程:任何類類型的所有值都可以同Object類型的變量來代替。
封裝:把數(shù)據(jù)和行為結(jié)合起在一個(gè)包中,并對(duì)對(duì)象使用者隱藏?cái)?shù)據(jù)的實(shí)現(xiàn)過程,一個(gè)對(duì)象中的數(shù)據(jù)叫他的實(shí)例字段(instance field)。
重載:當(dāng)多個(gè)方法具有相同的名字而含有不同的參數(shù)時(shí),便發(fā)生重載。編譯器必須挑選出調(diào)用哪個(gè)方法進(jìn)行編譯。
重寫:也可稱為方法的“覆蓋”。在Java中,子類可繼承父類中的方法,而不需要重新編寫相同的方法。但有時(shí)子類并不想原封不動(dòng)地繼承父類的方法,而是想作一定的修改,這就需要采用方法的重寫。值得注意的是,子類在重新定義父類已有的方法時(shí),應(yīng)保持與父類完全相同的方法頭聲明。
Class類:Object類中的getClass方法返回Class類型的一個(gè)實(shí)例,程序啟動(dòng)時(shí)包含在main方法的類會(huì)被加載,虛擬機(jī)要加載他需要的所有類,每一個(gè)加載的類都要加載它需要的類。