成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

Java基礎(chǔ)學(xué)習(xí)——String類(lèi)及其方法

buildupchao / 3400人閱讀

摘要:創(chuàng)建的對(duì)象一旦初始化,其內(nèi)容不可被改變。類(lèi)復(fù)寫(xiě)了類(lèi)中的定義了自己的獨(dú)特內(nèi)容,該方法用于判斷字符串相同。如結(jié)果將是,即和指向了同一個(gè)對(duì)象。常見(jiàn)方法獲取字符串長(zhǎng)度。返回指定索引處字符。

String類(lèi)概述
該類(lèi)被final修飾,無(wú)子類(lèi),不可被復(fù)寫(xiě)。創(chuàng)建的對(duì)象一旦初始化,其內(nèi)容不可被改變。
String類(lèi)復(fù)寫(xiě)了Object類(lèi)中的equals()定義了自己的獨(dú)特內(nèi)容,該方法用于判斷字符串相同。
例:

String s1 = "abc";
String s2 = new String("abc");

System.out.println(s1==s2);
System.out.println(s1.equals(s2));

結(jié)果顯示
false
true
面試中常考:這里的s1,s2有何區(qū)別?
s1在內(nèi)存中一個(gè)對(duì)象,s2有兩個(gè)對(duì)象。因?yàn)閮?nèi)存中有一個(gè)常量池存放字符串。字符串被存放進(jìn)去以后,以后創(chuàng)建新的字符串時(shí)會(huì)優(yōu)先在常量池中尋找并組合而成,而s2是創(chuàng)建一個(gè)全新的字符串。如:

String s1 = "abc";
String s3 = "abc";
System.out.println(s1==s2);

結(jié)果將是true,即s1和s3指向了同一個(gè)對(duì)象。

常見(jiàn)方法

1.獲取

1.1 字符串長(zhǎng)度。

int length():獲取長(zhǎng)度。

1.2 根據(jù)位置獲取位置上的某個(gè)字符。

char charAt(int index) :返回指定索引處字符。

1.3 根據(jù)字符獲取該字符在字符串中的位置。如果沒(méi)有找到返回-1.

int indexOf(int ch):找到該字符第一次出現(xiàn)的位置
int indexOf(int ch,int fromIndex):從fromIndex處開(kāi)始索引。
int indexOf(String str)
int indexOf(String str,int fromIndex):從fromIndex檢索字符串str的位置。

相反的,如果需要反向索引,有類(lèi)似方法

int lastIndexOf(*) 從右往左索引,然后**輸出其在字符串?dāng)?shù)組中的位置**
2.判斷

2.1 字符串中是否包含某一個(gè)子串。

 boolean contains(CharSequence str);

★特殊之處:int indexOf(str)也可以檢索str是否存在。

2.2 字符串中是否有內(nèi)容。

boolean isEmpty():原理就是判斷l(xiāng)ength是否為0

2.3 字符串是否是以指定內(nèi)容開(kāi)頭。

    boolean startWith(String str);

2.4 字符串是否是以指定內(nèi)容結(jié)尾

boolean startWith(String str);

應(yīng)用場(chǎng)景:通過(guò)判斷文件名檢索所需要的文件

2.5 判斷字符串內(nèi)容是否相同

boolean equals(str)

2.6 判斷內(nèi)容是否相同并忽略大小寫(xiě)

boolean equalsIgnoreCase(str)
3.轉(zhuǎn)換

3.1 將字符數(shù)組轉(zhuǎn)成字符串
構(gòu)造函數(shù)

String(char[]) 
String(char[],offset,count)將字符數(shù)組一部分轉(zhuǎn)成字符串

例:

char[] arr = {"a","b","c","d","e","f"}; 
String s = new String(arr,1,3);

結(jié)果將是 bcd.因?yàn)閿?shù)組下角標(biāo)從0開(kāi)始,故這里起始位是b,取3個(gè)字符,即為bcd.

靜態(tài)方法:需要跟在String后使用

static String copyValueOf(char[]);
static String copyValueOf(char[],offset,count);

3.2 將字符串轉(zhuǎn)成字符數(shù)組

char[] toCharArray();

3.3 將字節(jié)數(shù)組轉(zhuǎn)成字符串

String(byte[]); 
String(byte[],offset,count);

3.4 將字符串轉(zhuǎn)成字節(jié)數(shù)組

byte[] getBytes();

3.5 將基本數(shù)據(jù)類(lèi)型轉(zhuǎn)成字符串

static Sting valueOf();

特殊:字符串和字節(jié)數(shù)組在轉(zhuǎn)換過(guò)程中是可以指定編碼表的

4.替換
String replace(old char/str,new char/str); 

注意:由于字符串一旦被創(chuàng)建不能被改變,所以這里的替換后將會(huì)返回一個(gè)新字符串副本,而原來(lái)的字符串不會(huì)有變換

5.切割
String[] split(regex)  以regex為分割符號(hào)進(jìn)行分割
6.子串
String substring(begin);從指定出開(kāi)始到結(jié)尾 
String substring(begin,end);從begin處開(kāi)始到end處結(jié)束,之間的子串。**包括begin但不包括end.**

String s = "abcdef";
s1 = s.substring(2);
s2 = s.substring(2,4);

結(jié)果s1=cdef,s2=cd。

7.轉(zhuǎn)換

7.1 將字符串轉(zhuǎn)成大寫(xiě)或者小寫(xiě)

String toUpperCase();
String toLowerCase();

7.2 將字符串兩端多個(gè)空格去除

String trim();

7.3 對(duì)兩個(gè)字符串進(jìn)行自然順序的比較

int compareTo(str);**比較兩個(gè)字符串大小,并返回第一個(gè)不同的字符之間的ASCII碼值差值。**

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/66329.html

相關(guān)文章

  • Java編程基礎(chǔ)10——面向?qū)ο骭多態(tài)&抽象類(lèi)&接口

    摘要:案例演示抽象類(lèi)的成員特點(diǎn)抽象類(lèi)的成員方法特性抽象方法強(qiáng)制要求子類(lèi)做的事情。抽象類(lèi)中定義的是該繼承體系的共性功能。 1.多態(tài)的概述及其成員訪問(wèn)特點(diǎn)代碼體現(xiàn) A:多態(tài)(polymorphic)概述 事物存在的多種形態(tài) B:多態(tài)前提- 1.要有繼承關(guān)系 2.要有方法重寫(xiě) 3.要有父類(lèi)引用指向子類(lèi)對(duì)象。 C:多態(tài)中的成員訪問(wèn)特點(diǎn)之 成員變量:編譯和運(yùn)行都看父類(lèi)。 成員方法:編...

    dunizb 評(píng)論0 收藏0
  • 后臺(tái)開(kāi)發(fā)常問(wèn)面試題集錦(問(wèn)題搬運(yùn)工,附鏈接)

    摘要:基礎(chǔ)問(wèn)題的的性能及原理之區(qū)別詳解備忘筆記深入理解流水線抽象關(guān)鍵字修飾符知識(shí)點(diǎn)總結(jié)必看篇中的關(guān)鍵字解析回調(diào)機(jī)制解讀抽象類(lèi)與三大特征時(shí)間和時(shí)間戳的相互轉(zhuǎn)換為什么要使用內(nèi)部類(lèi)對(duì)象鎖和類(lèi)鎖的區(qū)別,,優(yōu)缺點(diǎn)及比較提高篇八詳解內(nèi)部類(lèi)單例模式和 Java基礎(chǔ)問(wèn)題 String的+的性能及原理 java之yield(),sleep(),wait()區(qū)別詳解-備忘筆記 深入理解Java Stream流水...

    spacewander 評(píng)論0 收藏0
  • 后臺(tái)開(kāi)發(fā)常問(wèn)面試題集錦(問(wèn)題搬運(yùn)工,附鏈接)

    摘要:基礎(chǔ)問(wèn)題的的性能及原理之區(qū)別詳解備忘筆記深入理解流水線抽象關(guān)鍵字修飾符知識(shí)點(diǎn)總結(jié)必看篇中的關(guān)鍵字解析回調(diào)機(jī)制解讀抽象類(lèi)與三大特征時(shí)間和時(shí)間戳的相互轉(zhuǎn)換為什么要使用內(nèi)部類(lèi)對(duì)象鎖和類(lèi)鎖的區(qū)別,,優(yōu)缺點(diǎn)及比較提高篇八詳解內(nèi)部類(lèi)單例模式和 Java基礎(chǔ)問(wèn)題 String的+的性能及原理 java之yield(),sleep(),wait()區(qū)別詳解-備忘筆記 深入理解Java Stream流水...

    xfee 評(píng)論0 收藏0
  • 后臺(tái)開(kāi)發(fā)常問(wèn)面試題集錦(問(wèn)題搬運(yùn)工,附鏈接)

    摘要:基礎(chǔ)問(wèn)題的的性能及原理之區(qū)別詳解備忘筆記深入理解流水線抽象關(guān)鍵字修飾符知識(shí)點(diǎn)總結(jié)必看篇中的關(guān)鍵字解析回調(diào)機(jī)制解讀抽象類(lèi)與三大特征時(shí)間和時(shí)間戳的相互轉(zhuǎn)換為什么要使用內(nèi)部類(lèi)對(duì)象鎖和類(lèi)鎖的區(qū)別,,優(yōu)缺點(diǎn)及比較提高篇八詳解內(nèi)部類(lèi)單例模式和 Java基礎(chǔ)問(wèn)題 String的+的性能及原理 java之yield(),sleep(),wait()區(qū)別詳解-備忘筆記 深入理解Java Stream流水...

    makeFoxPlay 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<