JavaSE(八)——StringBuffer类、Arrays类、数组排序
文章目錄
- 1. StringBuffer類
- 1.1 定義
- 1.2 StringBuffer類與String類的區(qū)別
- 1.3 功能
- 1.4 String類和StringBuffer類的相互轉(zhuǎn)換
- 2. 數(shù)組元素的排序及索引的查找
- 3. Arrays類
- 4. 包裝類
1. StringBuffer類
1.1 定義
- StringBuffer:可變的字符序列,效率低,用于在多線程操作字符串緩沖區(qū)下操作大量數(shù)據(jù)。
1.2 StringBuffer類與String類的區(qū)別
- String類:
為不可變對(duì)象,一旦被創(chuàng)建,就不能修改它的值;
對(duì)于已經(jīng)存在的String對(duì)象的修改都是重新創(chuàng)建一個(gè)新的對(duì)象,然后把新的值保存進(jìn)去。 - StringBuffer類:
是一個(gè)可變對(duì)象,當(dāng)對(duì)他進(jìn)行修改的時(shí)不會(huì)像String那樣重新建立對(duì)象,它只能通過構(gòu)造函數(shù)來(lái)建立。
StringBuffer ss = new StringBuffer();
注意:不能通過賦值符號(hào)對(duì)他進(jìn)行賦值
ss = “w!”;//error
1.3 功能
-
添加功能
(1)append(String str):可以把任意類型數(shù)據(jù)添加到字符串緩存區(qū)里,并返回字符串緩沖區(qū)本身。
(2)insert(int offset,String str):在指定位置把任意類型的數(shù)據(jù)插入到字符串緩沖區(qū)里面,并返回字符串緩沖區(qū)本身。 -
刪除功能
(1) deleteCharAt(int index):刪除指定位置的字符,并返回本身。
(2)delete(int start,int end):刪除從指定位置開始指定位置結(jié)束的內(nèi)容,并返回本身。 -
替換功能
replace(int start,int end,String str): 從start開始到end用str替換。 -
反轉(zhuǎn)功能
reverse(): 字符串反轉(zhuǎn) -
截取功能
(1) substring(int start): 從指定位置截取到末尾。
(2)substring(int start,int end): 截取從指定位置開始到結(jié)束位置,包括開始位置,不包括結(jié)束位置。 -
實(shí)例
1.4 String類和StringBuffer類的相互轉(zhuǎn)換
(1)String----->StringBuffer
- 方法一:構(gòu)造方法
- 方法二:append()方法
(2)StringBuffer------>String
-
方法一:構(gòu)造方法
-
方法二:toString()方法
-
方法三:substring()方法
-
實(shí)例
-
String類中重寫了equals方法,用來(lái)表示內(nèi)容是否相等。
StringBuffer類則沒有重寫equals方法。
2. 數(shù)組元素的排序及索引的查找
-
數(shù)組元素的排序主要有冒泡排序、選擇排序、直接插入排序、快速排序
-
索引的查找主要是二分查找
-
以一個(gè)數(shù)組工具類,完成冒泡排序、選擇排序、二分查找,并測(cè)試為例
工具類:
測(cè)試類:
測(cè)試結(jié)果:
3. Arrays類
- 針對(duì)數(shù)組進(jìn)行操作的工具類
- 功能
(1)轉(zhuǎn)換為字符串輸出功能 :Arrays.toString(arr)
(2)排序功能:Arrays.sort(arr)
(3)查找功能:查找值所對(duì)應(yīng)的索引 Arrays.binarySearch(arr,int)
(4)比較功能:比較兩數(shù)組中元素是否相同 Arrays.equals(arr1,arr2)
(5)復(fù)制功能:copyOf(arr,newLength) 與 copyOfRange(arr,from,to) - 實(shí)例
4. 包裝類
-
為了對(duì)基本數(shù)據(jù)類型進(jìn)行更多的操作,更方便的操作,java就針對(duì)每一種基本數(shù)據(jù)類型提供了對(duì)應(yīng)的類類型。
-
基本類型和包裝類的對(duì)應(yīng)
byte——Byte
short——Short
int ——Integer
long——Long
float——Float
double ——Double
char ——Character
boolean ——Boolean -
自動(dòng)裝箱:把基本類型轉(zhuǎn)換為包裝類類型
自動(dòng)拆箱:把包裝類類型轉(zhuǎn)換為基本類型 -
String類和int類的相互轉(zhuǎn)換
(1) int——>String
方法一:拼接空串
方法二:利用String類中的靜態(tài)方法valueOf()
方法三:int——>Integer——>String
(2)String——>int
方法一:利用Integer類中的靜態(tài)方法parseInt()
方法二:String——>Integer——>intValue() -
實(shí)例
總結(jié)
以上是生活随笔為你收集整理的JavaSE(八)——StringBuffer类、Arrays类、数组排序的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaSE(七)——Scanner类、
- 下一篇: JavaSE(九)——正则表达式、Dat