キャラクター
一般に、文字を処理するとき、元のデータ型charを使用します。
例
char ch = 'a'; // unicode for for for for for recercase greek omega charaterchar unichar = '/u039a'; // charscharの配列[] chararray = {'a'、 'b'、 'c'、 'd'、 'e'};ただし、開発では、プリミティブデータ型ではなくオブジェクトを使用する必要がある状況に遭遇します。このニーズを満たすために。 Javaは、元のデータ型Charのラッパークラス文字を提供します。
キャラクタークラスは、一連の有用なクラスを提供します(例:静的クラス)。キャラクターコンストラクターの助けを借りてキャラクターオブジェクトを作成できます。
文字ch = new Character( 'a');
Javaコンパイラは、場合によってはキャラクターオブジェクトを作成することもできます。たとえば、RAW CHARを予想できるメソッドに転送すると、コンパイラはCHARを自動的にキャラクターに変換します。変換が反対方向に行われる場合、この機能は自動パッキングまたはボックス化と呼ばれます。
例
//ここでプリミティブチャー 'A'に続いて、キャラクターオブジェクトにボックス化されますchcharacter ch = 'a'; //ここでプリミティブ 'x'はメソッドテスト用にボックス化されます。
エスケープシーケンス
Backslash(/)を持つキャラクターは、エスケープシーケンスであり、コンパイラにとって特別な意味を持っています。
ラインブレーク(/n)は、System.out.println()ステートメントでよく使用され、文字列が印刷された後にラインブレークが使用されます。
次の表は、Javaエスケープシーケンスを示しています。
| エスケープシーケンス | 説明する |
|---|---|
| /t | テキストにラベルを挿入します。 |
| /b | バックスペースをテキストに挿入します。 |
| /n | 新しいライン文字をテキストに挿入します。 |
| /r | テキストにキャリッジリターンを挿入します。 |
| /f | ページの変更をテキストに挿入します。 |
| /' | 単一の引用文字をテキストに挿入します。 |
| // | バックスラッシュ文字をテキストに挿入します。 |
例
引用符を内部に入れたい場合は、エスケープシーケンスを使用する必要があります。
public class test {public static void main(string args []){system.out.println( "彼女は /" hello! /"to me"); }}これにより、次の結果が生成されます。
彼女は「こんにちは!」と言いました私に。
キャラクターメソッド次のリストは、キャラクタークラスのすべてのサブクラスを実装する重要な例です。
| sn | メソッドの説明 |
|---|---|
| 1 | ISLETTER() 特定のchar値が文字であると判断します |
| 2 | isdigit() 特定のchar値が数字であると判断します |
| 3 | iswhitespace() 特定のchar値が空間であると判断します |
| 4 | isuppercase() 特定のchar値が大文字であると判断します |
| 5 | islowercase() 特定のchar値が小文字であると判断します |
| 6 | Touppercase() 指定された文字値の大文字形式を返します |
| 7 | tolowercase() 指定された文字値の小文字フォームを返します |
| 8 | toString() 指定された文字値、つまり文字文字列を表す文字列オブジェクトを返します |
弦
Javaプログラミングで広く使用されているStringは、文字のシーケンスです。 Javaプログラミング言語では、文字列はオブジェクトです。
Javaプラットフォームは、文字列を作成および操作するための文字列クラスを提供します。
文字列を作成します
文字列を作成する最も直接的な方法は、次のように書かれています。
文字列グリーティング= "Hello World!";
文字列を作成すると、コンパイラは「Hello World!」など、この場合にその値を持つ文字列オブジェクトを作成します。
他のオブジェクトは、新しいキーワードを使用してコンストラクターを使用して作成できます。文字列クラスには、文字の配列など、さまざまな種類の文字列を使用して初期値を提供する11のコンストラクターがあります。
public class stringdemo {public static void main(string args []){char [] helloarray = {'h'、 'e'、 'l'、 'l'、 'o'、 '}; String HelloString = new String(helloArray); System.out.println(hellostring); }}これにより、次の結果が生成されます。
こんにちは。
文字列クラスは不可能であるため、文字列オブジェクトが作成されると変更できません。多数の文字を持つ文字列を変更する必要がある場合は、StringBuffer&StringBuilderクラスを使用する必要があります。
文字列長
オブジェクトに関する情報を取得するために使用される方法は、アクセスメソッドと呼ばれます。文字列で使用できるアクセス方法の1つは長さ()で、文字列オブジェクトに含まれる文字の数を返します。
次の2行のコードが実行された後、レンは17に相当します。
public class stringdemo {public static void main(string args []){string palindrome = "dot saw i was tod"; int len = palindrome.length(); system.out.println( "文字列の長さは:" + len); }}これにより、次の結果が生成されます。
文字列の長さは17です
接続文字列
文字列クラスには、2つの文字列を連結する方法が含まれています。
string1.concat(string2);
これにより、string1の最後にstring2を追加する新しい文字列が返されます。 concat()メソッドを使用して、次のような文字列を連結することもできます。
「私の名前は」.concat( "zara");
文字列は、次のような「+」演算子とより頻繁に連結されます。
「こんにちは」、 +「world " +"! "
これは生成されます:
"こんにちは世界!"
次の例を見てください。
public class stringdemo {public static void main(string args []){string string1 = "saw i was"; System.out.println( "dot" + string1 + "tod"); }}これにより、次の結果が生成されます。
ドットは私がトッドだったのを見た
フォーマットされた文字列を作成します
出力フォーマット番号を印刷するには、既にprintf()およびformat()メソッドがあります。文字列クラスには、等価のメソッド形式()があり、printStreamオブジェクトの代わりに文字列オブジェクトを返します。
文字列を使用した静的形式()メソッドは、1回限りの印刷ステートメントの代わりに再利用可能なフォーマットされた文字列を作成できます。たとえば、次の方法の代わりに:
system.out.printf( "float変数の値は" + "%f、整数" + "変数の値は%d、string" + "は%s、floatvar、intvar、stringvar)。
あなたはこのように書くことができます:
string fs; fs = string.format( "float変数の値は" + "%f、整数" + "変数の値は%d、string" + "は%s、floatvar、intvar、stringvar); system.out.println(fs);
文字列メソッド
文字列クラスでサポートされているメソッドのリストは次のとおりです。
| sn | 方法と説明 |
|---|---|
| 1 | Char Charat(int index) 指定されたインデックスで文字を返します。 |
| 2 | int比較(オブジェクトo) この文字列を別のオブジェクトと比較します。 |
| 3 | int比較(string anotherstring) 2つの文字列の辞書順序を比較します。 |
| 4 | int comparetoignorecase(string str) 辞書の順序で2つの文字列を比較します。 |
| 5 | 文字列concat(string str) 指定された文字列をこの文字列の最後まで連結します。 |
| 6 | Boolean Contentequals(StringBuffer SB) 文字列が指定されたstringbufferと同じ文字シーケンスを表す場合にのみtrueを返します。 |
| 7 | static string copyvalueof(char [] data) 指定された配列内の文字のシーケンスを表す文字列を返します。 |
| 8 | static string copyvalueof(char [] data、int offset、int count) 指定された配列内の文字のシーケンスを表す文字列を返します。 |
| 9 | Boolean Endswith(String接尾辞) この文字列が指定された接尾辞で終わるかどうかをテストします。 |
| 10 | boolean equals(オブジェクトanobject) この文字列を指定されたオブジェクトと比較します。 |
| 11 | boolean equalsignorecase(string anothestring) この文字列を別の文字列と比較して、ケースの考慮事項を無視します。 |
| 12 | byte getBytes() プラットフォームのデフォルトの文字セットを使用してこの文字列をデコードし、結果を新しいバイト配列のバイトのシーケンスに保存します。 |
| 13 | byte [] getBytes(string charsetname 指定された文字セットを使用してこの文字列バイトシーケンスをデコードし、結果を新しいバイト配列に保存します。 |
| 14 | void getchars(int srcbegin、int srcend、char [] dst、int dstbegin) この文字列からターゲット文字配列に文字をコピーします。 |
| 15 | int hashcode() この文字列のハッシュコードを返します。 |
| 16 | int indexof(int ch) この文字列で指定された文字が最初に発生するインデックスを返します。 |
| 17 | int indexof(int ch、int fromindex) 指定された文字列の指定された文字の最初の発生に戻り、指定されたインデックスで検索を開始します。 |
| 18 | int indexof(string str) この文字列の指定されたサブストリングの最初の発生時にインデックスを返します。 |
| 19 | int indexof(string str、int fromindex) 指定されたインデックスから開始するこの文字列の指定されたサブストリングの最初の発生時にインデックスを返します。 |
| 20 | string intern() 文字列オブジェクトの正規化された表現を返します。 |
| 21 | int lastindexof(int ch) この文字列の指定された文字の最後の発生があるインデックスを返します。 |
| 22 | int lastindexof(int ch、int fromindex) 指定されたインデックスから逆方向に検索するこの文字列の指定された文字の最後の発生時にインデックスを返します。 |
| 23 | int lastindexof(string str) この文字列が指定したサブストリングの右端でインデックスを返します。 |
| 24 | int lastindexof(string str、int fromindex) 指定されたサブストリングの最後の発生をインデックス文字列に戻し、指定されたインデックスの先頭から後方に検索します。 |
| 25 | int length() この文字列の長さを返します。 |
| 26 | ブールマッチ(String regex) この文字列が与えられた正規表現と一致するかどうかを判断します。 |
| 27 | Boolean RegionMatches(Boolean Ingrecase、int toffset、string other、int ooffset、int len) 2つの文字列の領域が等しいことをテストします。 |
| 28 | Boolean RegionMatches(int toffset、string other、int ooffset、int len) 両方の文字列が等しいことをテストします。 |
| 29 | 文字列交換(char oldchar、char newchar) この文字列のOldCharすべての発生の新しいcharch置換を返して、新しい文字列を生成します。 |
| 30 | 文字列置換(String Regex、String Replacement この文字列で与えられた正規表現が与えられた置換と一致する各サブストリングを交換します。 |
| 31 | 文字列置換ファースト(文字列Regex、文字列置換) この文字列の交換最初のサブストリングを交換すると、指定された正規表現と一致します。 |
| 32 | string [] split(string regex) 与えられた正規表現の周りに一致するこの文字列を分割します。 |
| 33 | string [] split(string regex、int lime) 与えられた正規表現の周りに一致するこの文字列を分割します。 |
| 34 | boolean startswith(string prefix) この文字列が指定されたプレフィックスで始まるかどうかをテストします。 |
| 35 | boolean startswith(string prefix、int toffset) この文字列は、指定されたインデックスから始まる指定されたプレフィックスで始まるかどうかをテストします。 |
| 36 | CharSequenceサブシーケンス(int beginindex、int endindex) このシーケンスのサブシーケンスである新しい文字シーケンスを返します。 |
| 37 | string substring(int beginindex) この文字列は、この文字列のサブストリングである新しい文字列を返します。 |
| 38 | string substring(int beginindex、int endindex) この文字列は、この文字列のサブストリングである新しい文字列を返します。 |
| 39 | char [] tochararray() この文字列は、新しい文字配列に変換されます。 |
| 40 | string tolowercase() この文字列のすべての文字を使用して、デフォルトのロケールのルールを下ろします。 |
| 41 | 弦楽器局(ロケールロケール) この文字列のすべての文字を使用して、指定されたロケールのルールを下ろします。 |
| 42 | string toString() このオブジェクト(既に文字列です!)は文字列フォームを返します(ここではそれ自体です)。 |
| 43 | string touppercase() デフォルトのロケールのルールを使用して、この文字列のすべての文字を大文字に変換します。 |
| 44 | 文字列Touppercase(ロケールロケール) 特定のロケールのルールを使用して、この文字列のすべての文字を大文字に変換します。 |
| 45 | stringrim() 文字列のコピーを返し、最初と端にスペースが削除されます。 |
| 46 | 静的文字列Valueof(プリミティブデータ型x) 渡されたデータ型パラメーターの文字列表現を返します。 |