Java之字串和字串緩衝區

2021-07-15 18:26:43 字數 2329 閱讀 2036

一、字串

字串用於描述字串常用事物,是乙個特殊的物件,它的最大的特點是一旦初始化就不可以被改變,存在於常量池中。

二、字串的方法

1、獲取:(1)length():字串包含的字元數,既字串長度,返回值型別為int。

(2)charat(int  index):根據位置獲取位置上的某個字串,返回值型別為char,當index不存在時丟擲stringindexoutofbound***ception。

(3)indexof(int ch):獲取字元ch在字串中第一次出現的位置,返回值型別為int。

indexof(int ch,int fromindex):從fromindex位置開始獲取字元ch在字串中出現的位置,返回值型別為int。

indexof(string str):獲取字串str在字串中第一次出現的位置,返回值型別為int。

indexof(string str,int fronindex):從fromindex位置開始獲取字串str在字串中出現的位置,返回值型別為int。

以上四種方法是indexof的4個過載函式,當要獲取的字元或者字串不存在時返回-1。同理對於lastindexof也有四種方式與這四種方法相對應,只是lastindexof是從字串末尾開始查詢,用於字串較長的情況。

2、判斷:(1)contains(string str):判斷字串中是否包含某個子串,返回值型別為boolean,也可以通過indexof(string str)的方式判斷,若存在返回位置,沒有返回-1。

(2)isempty():判斷字串是否有內容,是1.6版本推出的新方法,原理是判斷length()是否為0,返回值型別為boolean。

(3)startswith(string str):判斷字串是否以指定內容內容開頭,返回值型別為boolean。

(4)endswith(string str):判斷字串是否以指定內容結尾,返回值型別為boolean。

(5)equals(object obj):string類複寫了object中的equals方法,該方法用於判斷字串是否相同,返回值型別為boolean。

(6)equalsignorecase(string str):判斷字串內容是否相同,忽略大小寫,返回值型別為boolean。

3、轉換:(1)將字元陣列轉成字串:建構函式:string(char),string(char,int from,int length),靜態方法:copyvalueof(char),copyvalueof(char,int from,int length)

(2)將字串轉成字元陣列:tochararray()

(3)將位元組陣列轉成字串::建構函式:string(byte),string(byte,int from,int length)

(4)將字串轉成位元組陣列:getbytes()

(5)將基本資料型別轉成字串:靜態方法:valueof(基本資料型別)

(6)將字串轉成大寫或者小寫:touppercase():將字串轉成大寫      tolowercase():將字串轉成小寫

注:字串和位元組陣列的轉換可以指定編碼表。

4、替換:replace(oldchar,newchar):將字串中原有的oldchar全部替換,如果沒有oldchar,返回原串

5、切割:split(regex):根據指定的內容對字串進行切割,得到string。

6、子串:substring(int fromindex) substring(int fromindex,int endindex):獲取子串,包含頭不包含尾。

7、去掉空格:trim():去掉字串兩端的空格,返回string。

8、compareto(string str):對兩個字串進行自然順寫的比較。

二、字串緩衝區

1、字串緩衝區是乙個容器,它的長度是可變的,可以直接操作多種資料型別,並最終通過tostring方法轉成字串。

(2) insert(int index,資料):將資料插入到指定的位置,該位置之後的角標順延。

3、刪除:delete(int start,int  end):刪除從start到end的資料,遵循包含頭不包含尾的原則。

deletecharat(int index):刪除指定位置的資料。

4、獲取:獲取的方法和字串的方法大致相同,在這裡不做具體的介紹,可以參閱字串方法查閱ap1文件獲得。

5、修改:(1)replace(int start,intend,string  str):用給定的字串替換從start到end之間的資料。

(2)setcharat(int index, char ch):用給定的ch替換對應的index角標的資料。

6、反**reverse():將字串緩衝區中的內容反轉。

字串緩衝區

在學習string類時,api中說字串緩衝區支援可變的字串,什麼是字串緩衝區呢?接下來我們來研究下字串緩衝區。查閱stringbuffer的api,執行緒安全的可變字串行。乙個類似於 string 的字串緩衝區,但不能修改。雖然在任意時間點上它都包含某種特定的字串行,但通過某些方法呼叫可以改變該序列...

StringBuffer字串緩衝區

構造乙個其中不帶字元的字串緩衝區,初始容量為 16 個字元。特點 1 可以對字串內容進行修改。2 是乙個容器。3 是可變長度的。4 緩衝區中可以儲存任意型別的資料。5 最終需要變成字串。容器通常具備一些固定的方法 1,新增。stringbuffer insert index,data 在指定位置插入...

字串緩衝區StringBuffer類,正規表示式

stringbuffer類 stringbuffer又稱為可變字串行,它是乙個類似於 string 的字串緩衝區,通過某些方法呼叫可以改變該序列的長度和內容。它是乙個容器,容器中可以裝很多字串。並且能夠對其中的字串進行各種操作。方法 package com.oricle.stringbuffer p...