Java の文字列も一連の文字です。ただし、文字列を文字配列として扱う他の多くのコンピューター言語とは異なり、Java は文字列を String 型オブジェクトとして扱います。文字列を組み込みオブジェクトとして扱うことにより、Java は文字列を処理するための非常に豊富な機能セットを提供できるようになります。以下に、よく使用される関数とその関連説明を示します。
文字列関連の関数
1)部分文字列()
これには 2 つの形式があり、1 つ目は次のとおりです。 String substring(int startIndex)
2 番目のものは次のとおりです: String substring(int startIndex,int endIndex)
2) concat() は 2 つの文字列を接続します。 例: String s="Welcome to ";
文字列 t=s.concat("安徽");
3)replace() には 2 つの形式の置換があります。最初の形式は、呼び出し文字列内で特定の文字が出現するすべての場所を文字で置き換えます。形式は次のとおりです。
文字列置換(元の文字、文字置換)
例: String s="Hello".replace('l','w');
2 番目の形式は、次のように、ある文字シーケンスを別の文字シーケンスに置き換えます。
文字列置換(CharSequenceオリジナル、CharSequence置換)
4)trim() は開始スペースと終了スペースを削除します。
5)valueOf() 文字列に変換
6)toLowerCase()は小文字に変換します
7)toUpperCase() は大文字に変換します
8)length() は文字列の長さを取得します。 例: char chars[]={'a','b'.'c'};
文字列 s=新しい文字列(文字);
int len=s.length();
9) charAt() は文字をインターセプトします。例: char ch;
ch=”abc”.charAt(1);
戻り値は「b」です
10)getChars() は複数の文字をインターセプトします
void getChars(int sourceStart,int sourceEnd,char target[],int targetStart)
sourceStart は、部分文字列の開始文字の添え字を指定します。
sourceEnd は、部分文字列の終わりの後の次の文字のインデックスを指定します。したがって、部分文字列には、sourceStart から sourceEnd-1 までの文字が含まれます。
target は文字を受け取る配列を指定します
targetStart ターゲット内の部分文字列のコピーを開始する添え字の値。 例: String s="これは getChars メソッドのデモです。";
char buf[]=新しいchar[20];
s.getChars(10,14,buf,0);
11)getBytes()
getChars() の代わりに、バイト配列に文字を格納することもできます。これが getBytes() です。
例:
文字列 s = "こんにちは!こんにちは!";
byte[] バイト = s.getBytes();
12)toCharArray()
例:
文字列 s = "こんにちは!こんにちは!";
char[] ss = s.toCharArray();
13)equals()とequalsIgnoreCase()は2つの文字列を比較します
14)regionMatches() は、文字列内の特定の領域を別の特定の領域と比較するために使用されます。これには、比較時に大文字と小文字を区別しないことができるオーバーロードされた形式があります。
booleanregionMatches(int startIndex,String str2,int str2StartIndex,int numChars)
booleanregionMatches(booleanignoreCase,int startIndex,String
str2,int str2StartIndex,int numChars)
15)startsWith() と endesWith()
startsWith() メソッドは、特定の文字列で開始するかどうかを決定します
endWith() メソッドは、特定の文字列で終了するかどうかを決定します。
16)equals() と ==
equals() メソッドは文字列オブジェクト内の文字を比較します。
== 演算子は、2 つのオブジェクトが同じインスタンスを参照しているかどうかを比較します。
例: 文字列 s1="Hello";
文字列 s2=新しい文字列(s1);
s1.eauals(s2); //true
s1==s2;//false
17)compareTo() と CompareToIgnoreCase() は文字列を比較します
18)indexOf() と lastIndexOf()
IndexOf() は、最初に出現した文字または部分文字列を検索します。
lastIndexOf() は、文字または部分文字列の最後の出現を検索します。
19) スペースを削除するトリム関数の例: String t1 = " abc de ";
System.out.println(t1.trim());//先頭と末尾のスペースを削除します「abc de」
20)分割文字列の分割
文字列 y = "abc,de,fg,hi,jk";
String[] y1 = y.split(",");//文字列内のすべての「,」文字をインターセプトします
for (int i = 0; i < y1.length; i++) {
System.out.print(y1[i]);//結果を出力 abcdefghijk
}
21)append は関数を追加または挿入します
StringBuffer zz1 = new StringBuffer(z1); // 挿入文字を追加します。
zz1.append('|').append("hijk").append('/').append("lmn").append("opq");
System.out.println();
System.out.print(zz1);//出力: abcdefg|hijk/lmnopq
StringBuffer コンストラクター
StringBuffer は 3 つのコンストラクターを定義します。
文字列バッファ()
StringBuffer(int サイズ)
StringBuffer(文字列str)
StringBuffer(CharSequence 文字)
以下は StringBuffer 関連の関数です。
1)長さ()と容量()
StringBuffer の現在の長さは length() メソッドを通じて取得でき、割り当て可能な領域全体は Capacity() メソッドを通じて取得できます。
2) ensureCapacity() はバッファ サイズを設定します
void ensureCapacity(int 容量)
3)setLength()はバッファの長さを設定します
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() は、任意のタイプのデータの文字列表現を呼び出し側 StringBuffer オブジェクトの末尾に接続できます。
例: int a=42;
StringBuffer sb=new StringBuffer(40);
文字列 s=sb.append("a=").append(a).append("!").toString();
6)insert()は文字列を挿入します
StringBuffer insert(int インデックス,文字列 str)
StringBuffer insert(int インデックス,char ch)
StringBuffer insert(int インデックス,オブジェクト obj)
7)index は、StringBuffer オブジェクト内で文字列を挿入する位置の添え字を指定します。
8)reverse() は StringBuffer オブジェクト内の文字を反転します。
StringBuffer reverse()
9)delete() と deleteCharAt() 文字を削除します
StringBuffer delete(int startIndex,int endIndex)
StringBuffer deleteCharAt(int loc)
10)置換()置換
StringBuffer replace(int startIndex,int endIndex,String str)
11)substring() は部分文字列をインターセプトします
文字列の部分文字列(int startIndex)
文字列の部分文字列(int startIndex,int endIndex)
この記事は CSDN ブログからのものです。転載する場合は出典を明記してください: http://blog.csdn.net/hzy20090501/archive/2009/12/30/5103817.aspx
-