- java.lang.Object
- 
- java.lang.String
 
- 
- すべての実装されたインタフェース:
- Serializable,- CharSequence,- Comparable<String>,- Constable,- ConstantDesc
 
 public final class String extends Object implements Serializable, Comparable<String>, CharSequence, Constable, ConstantDesc Stringクラスは文字列を表します。 Javaプログラム内の"abc"などのリテラル文字列はすべて、このクラスのインスタンスとして実行されます。文字列は定数です。この値を作成したあとに変更はできません。 文字列バッファは可変文字列をサポートします。 文字列オブジェクトは不変であるため、共用することができます。 たとえば、 String str = "abc";は、次と同じです。 char data[] = {'a', 'b', 'c'}; String str = new String(data);文字列がどのように使われるかについて、さらに例を示します。 System.out.println("abc"); String cde = "cde"; System.out.println("abc" + cde); String c = "abc".substring(2,3); String d = cde.substring(1, 2);Stringクラスには、文字列のそれぞれの文字をテストするメソッドや、文字列の比較、文字列の検索、部分文字列の抽出、および文字をすべて大文字または小文字に変換した文字列のコピー作成などを行うメソッドがあります。 ケース・マッピングは、Characterクラスで指定されたUnicode仕様バージョンに基づいています。Java言語は、文字列連結演算子( + )、およびその他のオブジェクトから文字列への変換に対する特別なサポートを提供します。 文字列の連結と変換の詳細については、「Java™言語仕様」を参照してください。 ほかで指定がない場合、 null引数をコンストラクタまたはこのクラスのメソッドへ渡すと、NullPointerExceptionがスローされます。Stringは、補助文字をサロゲート・ペアで表現するUTF-16形式の文字列を表します(詳細は、Characterクラスの「Unicode文字表現」セクションを参照)。charコード単位を参照するインデックス値です。したがって、補助文字はStringの2つの位置を使用します。Stringクラスは、Unicodeコード単位(char値)を扱うメソッドのほかに、Unicodeコード・ポイント(文字)を扱うメソッドを提供します。特に明記されていない限り、文字列を比較するメソッドはロケールを考慮しません。 Collatorクラスは、細かい粒度のロケール依存のString比較のためのメソッドを提供します。- 実装上の注意:
- コンパイラが最終的に「Java™言語仕様」に準拠している限り、文字列連結演算子の実装はJavaコンパイラの裁量に委ねられます。 たとえば、javacコンパイラは、JDKのバージョンに応じて、StringBuffer、StringBuilder、またはjava.lang.invoke.StringConcatFactoryを使用して演算子を実装できます。 文字列変換の実装は、通常、Objectによって定義され、Javaのすべてのクラスによって継承されるメソッドtoStringによって行われます。
- 導入されたバージョン:
- 1.0
- 関連項目:
- Object.toString(),- StringBuffer,- StringBuilder,- Charset, 直列化された形式
- Java™言語仕様:
- 15.18.1文字列連結演算子+
 
- 
- 
フィールドのサマリーフィールド 修飾子と型 フィールド 説明 static Comparator<String>CASE_INSENSITIVE_ORDERcompareToIgnoreCaseの場合と同じようにStringオブジェクトを順序付けるComparatorです。
 - 
コンストラクタのサマリーコンストラクタ コンストラクタ 説明 String()新しく生成されたStringオブジェクトを初期化して、空の文字シーケンスを表すようにします。String(byte[] bytes)プラットフォームのデフォルトの文字セットを使用して、指定されたバイト配列を復号化することによって、新しいStringを構築します。String(byte[] ascii, int hibyte)非推奨。このメソッドでは、バイトから文字への変換が正しく行われません。String(byte[] bytes, int offset, int length)プラットフォームのデフォルトの文字セットを使用して、指定されたバイト部分配列を復号化することによって、新しいStringを構築します。String(byte[] ascii, int hibyte, int offset, int count)非推奨。このメソッドでは、バイトから文字への変換が正しく行われません。String(byte[] bytes, int offset, int length, String charsetName)指定された文字セットを使用して、指定されたバイト部分配列をデコードすることによって、新しいStringを構築します。String(byte[] bytes, int offset, int length, Charset charset)指定された文字セットを使用して、指定された部分バイト配列を復号化することにより、新しいStringを構築します。String(byte[] bytes, String charsetName)指定された文字セットを使用して、指定されたバイト配列をデコードすることにより、新しいStringを構築します。String(byte[] bytes, Charset charset)指定された文字セットを使用して、指定されたバイト配列をデコードすることにより、新しいStringを構築します。String(char[] value)新しいStringを割り当てて、これが文字配列引数に現在含まれている文字シーケンスを表すようにします。String(char[] value, int offset, int count)文字配列引数の部分配列からなる文字を含む新しいStringを割り当てます。String(int[] codePoints, int offset, int count)Unicodeコード・ポイント配列引数の部分配列からなる文字を含む新しいStringを割り当てます。String(String original)新しく生成されたStringオブジェクトを初期化して、引数と同じ文字シーケンスを表すようにします。つまり、新しく作成された文字列は引数文字列のコピーになります。String(StringBuffer buffer)文字列バッファ引数に現在含まれている文字列を持つ新しい文字列を構築します。String(StringBuilder builder)文字列ビルダー引数に現在含まれている文字列を持つ新しい文字列を割り当てます。
 - 
メソッドのサマリー修飾子と型 メソッド 説明 charcharAt(int index)指定されたインデックスのchar値を返します。IntStreamchars()このシーケンスのchar値をゼロ拡張したintを含むストリームを返します。intcodePointAt(int index)指定されたインデックス位置の文字(Unicodeコード・ポイント)を返します。intcodePointBefore(int index)指定されたインデックスの前の文字(Unicodeコード・ポイント)を返します。intcodePointCount(int beginIndex, int endIndex)このStringの指定されたテキスト範囲のUnicodeコード・ポイントの数を返します。IntStreamcodePoints()このシーケンスからコード・ポイント値のストリームを返します。intcompareTo(String anotherString)2つの文字列を辞書的に比較します。intcompareToIgnoreCase(String str)大文字と小文字の区別なしで、2つの文字列を辞書的に比較します。Stringconcat(String str)指定された文字列をこの文字列の最後に連結します。booleancontains(CharSequence s)この文字列が指定されたchar値のシーケンスを含む場合に限りtrueを返します。booleancontentEquals(CharSequence cs)この文字列と指定されたCharSequenceを比較します。booleancontentEquals(StringBuffer sb)この文字列と指定されたStringBufferを比較します。static StringcopyValueOf(char[] data)valueOf(char[])と同等です。static StringcopyValueOf(char[] data, int offset, int count)Optional<String>describeConstable()このインスタンス自体の名目記述子を含むOptionalを返します。booleanendsWith(String suffix)この文字列が、指定された接尾辞で終るかどうかを判定します。booleanequals(Object anObject)この文字列と指定されたオブジェクトを比較します。booleanequalsIgnoreCase(String anotherString)大文字と小文字を区別せずに、このStringを別のStringと比較します。static Stringformat(String format, Object... args)指定された書式の文字列と引数を使って、書式付き文字列を返します。static Stringformat(Locale l, String format, Object... args)指定されたロケール、書式文字列、および引数を使って、フォーマットされた文字列を返します。byte[]getBytes()プラットフォームのデフォルトの文字セットを使用してこのStringをバイト・シーケンスにエンコード化し、結果を新規バイト配列に格納します。voidgetBytes(int srcBegin, int srcEnd, byte[] dst, int dstBegin)非推奨。このメソッドでは、文字からバイトへの変換が正しく行われません。byte[]getBytes(String charsetName)指定された文字セットを使用してこのStringをバイト・シーケンスにエンコードし、結果を新規バイト配列に格納します。byte[]getBytes(Charset charset)指定された文字セットを使用してこのStringをバイト・シーケンスに符号化し、結果を新規バイト配列に格納します。voidgetChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)この文字列から、コピー先の文字配列に文字をコピーします。inthashCode()この文字列のハッシュ・コードを返します。Stringindent(int n)nの値に基づいてこの文字列の各行のインデントを調整し、行の終了文字を正規化します。intindexOf(int ch)この文字列内で、指定された文字が最初に出現する位置のインデックスを返します。intindexOf(int ch, int fromIndex)この文字列内で、指定されたインデックスから検索を開始し、指定された文字が最初に出現する位置のインデックスを返します。intindexOf(String str)この文字列内で、指定された部分文字列が最初に出現する位置のインデックスを返します。intindexOf(String str, int fromIndex)指定されたインデックス以降で、指定された部分文字列がこの文字列内で最初に出現する位置のインデックスを返します。Stringintern()文字列オブジェクトの正準表現を返します。booleanisBlank()文字列が空であるか、white spaceコード・ポイントのみが含まれている場合はtrueを返し、falseを返します。booleanisEmpty()length()が0の場合にのみ、trueを返します。static Stringjoin(CharSequence delimiter, CharSequence... elements)指定されたdelimiterのコピーを使用して結合されたCharSequence要素のコピーからなる新しいStringを返します。static Stringjoin(CharSequence delimiter, Iterable<? extends CharSequence> elements)指定されたdelimiterのコピーを使用して結合されたCharSequence要素のコピーからなる新しいStringを返します。intlastIndexOf(int ch)この文字列内で、指定された文字が最後に出現する位置のインデックスを返します。intlastIndexOf(int ch, int fromIndex)この文字列内で、指定された文字が最後に出現する位置のインデックスを返します(検索は指定されたインデックスから開始され、先頭方向に行われる)。intlastIndexOf(String str)この文字列内で、指定された部分文字列が最後に出現する位置のインデックスを返します。intlastIndexOf(String str, int fromIndex)この文字列内で、指定された部分文字列が最後に出現する位置のインデックスを返します(検索は指定されたインデックスから開始され、先頭方向に行われる)。intlength()この文字列の長さを返します。Stream<String>lines()この文字列から抽出された行のストリームを、行終了記号で区切りて返します。booleanmatches(String regex)この文字列が、指定された正規表現と一致するかどうかを判定します。intoffsetByCodePoints(int index, int codePointOffset)このString内で、指定されたindexからcodePointOffsetコード・ポイント分だけオフセットされた位置のインデックスを返します。booleanregionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)2つの文字列領域が等しいかどうかを判定します。booleanregionMatches(int toffset, String other, int ooffset, int len)2つの文字列領域が等しいかどうかを判定します。Stringrepeat(int count)この文字列を連結した値がcount回繰り返される文字列を返します。Stringreplace(char oldChar, char newChar)この文字列内にあるすべてのoldCharをnewCharに置換した結果生成される文字列を返します。Stringreplace(CharSequence target, CharSequence replacement)リテラル・ターゲット・シーケンスに一致するこの文字列の部分文字列を、指定されたリテラル置換シーケンスに置き換えます。StringreplaceAll(String regex, String replacement)指定された正規表現に一致する、この文字列の各部分文字列に対し、指定された置換を実行します。StringreplaceFirst(String regex, String replacement)指定された正規表現に一致する、この文字列の最初の部分文字列に対し、指定された置換を実行します。StringresolveConstantDesc(MethodHandles.Lookup lookup)このインスタンスをConstantDescとして解決します。その結果がインスタンス自体です。String[]split(String regex)この文字列を、指定された正規表現に一致する位置で分割します。String[]split(String regex, int limit)この文字列を、指定された正規表現に一致する位置で分割します。booleanstartsWith(String prefix)この文字列が、指定された接頭辞で始まるかどうかを判定します。booleanstartsWith(String prefix, int toffset)この文字列の指定されたインデックス以降の部分文字列が、指定された接頭辞で始まるかどうかを判定します。Stringstrip()値がこの文字列であり、先頭と末尾のすべてのwhite spaceが削除されている文字列を返します。StringstripLeading()すべての先行white spaceが削除されて、値がこの文字列である文字列を返します。StringstripTrailing()値がこの文字列で、すべての後続white spaceが削除されている文字列を返します。CharSequencesubSequence(int beginIndex, int endIndex)このシーケンスのサブシーケンスである文字シーケンスを返します。Stringsubstring(int beginIndex)この文字列の部分文字列である文字列を返します。Stringsubstring(int beginIndex, int endIndex)この文字列の部分文字列である文字列を返します。char[]toCharArray()この文字列を新しい文字配列に変換します。StringtoLowerCase()デフォルト・ロケールのルールを使って、このString内のすべての文字を小文字に変換します。StringtoLowerCase(Locale locale)指定されたLocaleのルールを使って、このString内のすべての文字を小文字に変換します。StringtoString()このオブジェクト(これはすでに文字列です!)StringtoUpperCase()デフォルト・ロケールのルールを使って、このString内のすべての文字を大文字に変換します。StringtoUpperCase(Locale locale)指定されたLocaleのルールを使って、このString内のすべての文字を大文字に変換します。<R> Rtransform(Function<? super String,? extends R> f)このメソッドは、関数をthis文字列に適用します。Stringtrim()値がこの文字列で、先頭と末尾のすべてのスペースが削除され、コード・ポイントが'U+0020'(空白文字)以下の文字でスペースが定義されている文字列を返します。static StringvalueOf(boolean b)boolean引数の文字列表現を返します。static StringvalueOf(char c)char引数の文字列表現を返します。static StringvalueOf(char[] data)char配列引数の文字列表現を返します。static StringvalueOf(char[] data, int offset, int count)char配列引数の特定の部分配列の文字列表現を返します。static StringvalueOf(double d)double引数の文字列表現を返します。static StringvalueOf(float f)float引数の文字列表現を返します。static StringvalueOf(int i)int引数の文字列表現を返します。static StringvalueOf(long l)long引数の文字列表現を返します。static StringvalueOf(Object obj)Object引数の文字列表現を返します。
 
- 
- 
- 
フィールドの詳細- 
CASE_INSENSITIVE_ORDERpublic static final Comparator<String> CASE_INSENSITIVE_ORDER compareToIgnoreCaseの場合と同じようにStringオブジェクトを順序付けるComparatorです。 このコンパレータは直列化可能です。このComparatorはロケールを考慮しないので、一部のロケールでは、正しい順序に並べられないことがあります。 Collatorクラスはロケールに依存した比較を提供します。- 導入されたバージョン:
- 1.2
- 関連項目:
- Collator
 
 
- 
 - 
コンストラクタの詳細- 
Stringpublic String() 新しく生成されたStringオブジェクトを初期化して、空の文字シーケンスを表すようにします。 Stringは不変なので、このコンストラクタを使う必要はありません。
 - 
Stringpublic String(String original) 新しく生成されたStringオブジェクトを初期化して、引数と同じ文字シーケンスを表すようにします。つまり、新しく作成された文字列は引数文字列のコピーになります。 Stringは不変なので、originalの明示的なコピーが必要でないかぎり、このコンストラクタを使う必要はありません。- パラメータ:
- original-A- String
 
 - 
Stringpublic String(char[] value) 新しいStringを割り当てて、これが文字配列引数に現在含まれている文字シーケンスを表すようにします。 文字配列の内容がコピーされます。コピー後にその文字が変更されても、新しく作成された文字列には影響しません。- パラメータ:
- value- 文字列の初期値
 
 - 
Stringpublic String(char[] value, int offset, int count)文字配列引数の部分配列からなる文字を含む新しいStringを割り当てます。 引数offsetは部分配列の先頭の文字のインデックスであり、引数countは部分配列の長さを指定します。 部分配列の内容がコピーされます。コピー後に文字配列が変更されても、新しく作成された文字列には影響しません。- パラメータ:
- value- 文字列のソースである配列
- offset- 初期オフセット
- count- 長さ
- 例外:
- IndexOutOfBoundsException-- offsetが負の場合、- countは負であるか、または- offsetが- value.length - countより大きい
 
 - 
Stringpublic String(int[] codePoints, int offset, int count)Unicodeコード・ポイント配列引数の部分配列からなる文字を含む新しいStringを割り当てます。 引数offsetは部分配列の先頭のコード・ポイントのインデックスであり、引数countは部分配列の長さを指定します。 部分配列の内容がcharに変換されます。変換後にint配列が変更されても、新しく作成された文字列には影響しません。- パラメータ:
- codePoints- Unicodeコード・ポイントのソースである配列
- offset- 初期オフセット
- count- 長さ
- 例外:
- IllegalArgumentException-- codePointsで無効なUnicodeコード・ポイントが見つかった場合
- IndexOutOfBoundsException-- offsetが負の場合、- countは負であるか、または- offsetが- codePoints.length - countより大きい
- 導入されたバージョン:
- 1.5
 
 - 
String@Deprecated(since="1.1") public String(byte[] ascii, int hibyte, int offset, int count) 非推奨。このメソッドでは、バイトから文字への変換が正しく行われません。 JDK 1.1以降では、これを行うには、Charset(文字セットの名前)を取る、またはプラットフォームのデフォルト文字セットを使用するStringコンストラクタの使用が推奨されます。8ビット整数値配列の部分配列によって構築される新しいStringを割り当てます。引数 offsetは部分配列の先頭のバイトのインデックスであり、引数countは部分配列の長さを指定します。サブアレイ内の各 byteは、String(byte[],int)コンストラクタで指定されたcharに変換されます。- パラメータ:
- ascii- 文字列に変換されるバイト
- hibyte- 16ビットの各Unicodeコード単位の上位8ビット
- offset- 初期オフセット
- count- 長さ
- 例外:
- IndexOutOfBoundsException-- offsetが負の場合、- countは負であるか、または- offsetが- ascii.length - countより大きい
- 関連項目:
- String(byte[], int),- String(byte[], int, int, java.lang.String),- String(byte[], int, int, java.nio.charset.Charset),- String(byte[], int, int),- String(byte[], java.lang.String),- String(byte[], java.nio.charset.Charset),- String(byte[])
 
 - 
String@Deprecated(since="1.1") public String(byte[] ascii, int hibyte) 非推奨。このメソッドでは、バイトから文字への変換が正しく行われません。 JDK 1.1以降では、これを行うには、Charset(文字セットの名前)を取る、またはプラットフォームのデフォルト文字セットを使用するStringコンストラクタの使用が推奨されます。8ビット整数値の配列からなる文字を持つ新しいStringを割り当てます。 作成される文字列の各文字データc は、バイト配列の対応するコンポーネントbから、次のようになります。c == (char)(((hibyte & 0xff) << 8) | (b & 0xff))- パラメータ:
- ascii- 文字列に変換されるバイト
- hibyte- 16ビットの各Unicodeコード単位の上位8ビット
- 関連項目:
- String(byte[], int, int, java.lang.String),- String(byte[], int, int, java.nio.charset.Charset),- String(byte[], int, int),- String(byte[], java.lang.String),- String(byte[], java.nio.charset.Charset),- String(byte[])
 
 - 
Stringpublic String(byte[] bytes, int offset, int length, String charsetName) throws UnsupportedEncodingException指定された文字セットを使用して、指定されたバイト部分配列をデコードすることによって、新しいStringを構築します。 新しいStringの長さは文字セットによって変化するため、部分配列長と一致しないことがあります。指定された文字セットで指定されたバイトが無効な場合、このコンストラクタの動作は指定されません。 デコード処理をより強力に制御する必要がある場合、 CharsetDecoderクラスを使用する必要があります。- パラメータ:
- bytes- 文字列に復号化されるバイト
- offset- 復号化される先頭バイトのインデックス
- length- 復号化するバイト数
- charsetName- サポートされているcharsetの名前
- 例外:
- UnsupportedEncodingException- 指定された文字セットがサポートされていない場合
- IndexOutOfBoundsException-- offsetが負の場合、- lengthは負であるか、または- offsetが- bytes.length - lengthより大きい
- 導入されたバージョン:
- 1.1
 
 - 
Stringpublic String(byte[] bytes, int offset, int length, Charset charset)指定された文字セットを使用して、指定された部分バイト配列を復号化することにより、新しいStringを構築します。 新しいStringの長さは文字セットによって変化するため、部分配列長と一致しないことがあります。このメソッドは、不正入力シーケンスやマップ不可文字シーケンスを、この文字セットのデフォルトの置換文字列で置き換えます。 デコード処理をより強力に制御する必要がある場合、 CharsetDecoderクラスを使用する必要があります。- パラメータ:
- bytes- 文字列に復号化されるバイト
- offset- 復号化される先頭バイトのインデックス
- length- 復号化するバイト数
- charset-- bytesの復号化に使用される文字セット
- 例外:
- IndexOutOfBoundsException-- offsetが負の場合、- lengthは負であるか、または- offsetが- bytes.length - lengthより大きい
- 導入されたバージョン:
- 1.6
 
 - 
Stringpublic String(byte[] bytes, String charsetName) throws UnsupportedEncodingException指定された文字セットを使用して、指定されたバイト配列をデコードすることにより、新しいStringを構築します。 新しいStringの長さは文字セットによって変化するため、バイト配列長と一致しないことがあります。指定された文字セットで指定されたバイトが無効な場合、このコンストラクタの動作は指定されません。 デコード処理をより強力に制御する必要がある場合、 CharsetDecoderクラスを使用する必要があります。- パラメータ:
- bytes- 文字列に復号化されるバイト
- charsetName- サポートされているcharsetの名前
- 例外:
- UnsupportedEncodingException- 指定された文字セットがサポートされていない場合
- 導入されたバージョン:
- 1.1
 
 - 
Stringpublic String(byte[] bytes, Charset charset)指定された文字セットを使用して、指定されたバイト配列をデコードすることにより、新しいStringを構築します。 新しいStringの長さは文字セットによって変化するため、バイト配列長と一致しないことがあります。このメソッドは、不正入力シーケンスやマップ不可文字シーケンスを、この文字セットのデフォルトの置換文字列で置き換えます。 デコード処理をより強力に制御する必要がある場合、 CharsetDecoderクラスを使用する必要があります。- パラメータ:
- bytes- 文字列に復号化されるバイト
- charset-- bytesの復号化に使用される文字セット
- 導入されたバージョン:
- 1.6
 
 - 
Stringpublic String(byte[] bytes, int offset, int length)プラットフォームのデフォルトの文字セットを使用して、指定されたバイト部分配列を復号化することによって、新しいStringを構築します。 新しいStringの長さは文字セットによって変化するため、部分配列長と一致しないことがあります。指定されたバイトがデフォルトの文字セットで無効な場合、このコンストラクタの動作は指定されません。 デコード処理をより強力に制御する必要がある場合、 CharsetDecoderクラスを使用する必要があります。- パラメータ:
- bytes- 文字列に復号化されるバイト
- offset- 復号化される先頭バイトのインデックス
- length- 復号化するバイト数
- 例外:
- IndexOutOfBoundsException-- offsetが負の場合、- lengthは負であるか、または- offsetが- bytes.length - lengthより大きい
- 導入されたバージョン:
- 1.1
 
 - 
Stringpublic String(byte[] bytes) プラットフォームのデフォルトの文字セットを使用して、指定されたバイト配列を復号化することによって、新しいStringを構築します。 新しいStringの長さは文字セットによって変化するため、バイト配列長と一致しないことがあります。指定されたバイトがデフォルトの文字セットで無効な場合、このコンストラクタの動作は指定されません。 デコード処理をより強力に制御する必要がある場合、 CharsetDecoderクラスを使用する必要があります。- パラメータ:
- bytes- 文字列に復号化されるバイト
- 導入されたバージョン:
- 1.1
 
 - 
Stringpublic String(StringBuffer buffer) 文字列バッファ引数に現在含まれている文字列を持つ新しい文字列を構築します。 文字列バッファの内容がコピーされます。コピー後に文字列バッファが変更されても、新しく作成された文字列には影響しません。- パラメータ:
- buffer-A- StringBuffer
 
 - 
Stringpublic String(StringBuilder builder) 文字列ビルダー引数に現在含まれている文字列を持つ新しい文字列を割り当てます。 文字列ビルダーの内容がコピーされます。コピー後に文字列ビルダーが変更されても、新しく作成された文字列には影響しません。このコンストラクタの提供目的は、 StringBuilderに移行しやすくすることです。toStringメソッドを使って文字列ビルダーから文字列を取得することは、処理が高速になるので一般的に推奨されています。- パラメータ:
- builder-A- StringBuilder
- 導入されたバージョン:
- 1.5
 
 
- 
 - 
メソッドの詳細- 
lengthpublic int length() この文字列の長さを返します。 長さは文字列内のUnicodeコード単位の数に等しくなります。- 定義:
- length、インタフェース:- CharSequence
- 戻り値:
- このオブジェクトによって表される文字シーケンスの長さ。
 
 - 
isEmptypublic boolean isEmpty() length()が0の場合にのみ、trueを返します。- 戻り値:
- length()が- 0の場合は- true、それ以外の場合は- false
- 導入されたバージョン:
- 1.6
 
 - 
charAtpublic char charAt(int index) 指定されたインデックスのchar値を返します。 インデックスの範囲は0からlength() - 1までです。 配列のインデックス付けの場合と同じように、シーケンスの最初のcharのインデックスは0、次の文字のインデックスは1と続きます。インデックスで指定された char値がサロゲートの場合、サロゲート値が返されます。- 定義:
- charAt、インタフェース:- CharSequence
- パラメータ:
- index-- char値のインデックス。
- 戻り値:
- 文字列内の指定されたインデックス位置にあるchar値。 最初のchar値のインデックスが0になる。
- 例外:
- IndexOutOfBoundsException-- index引数が負の値、または文字列の長さと同じかこれより大きい値の場合。
 
 - 
codePointAtpublic int codePointAt(int index) 指定されたインデックス位置の文字(Unicodeコード・ポイント)を返します。 インデックスは、char値(Unicodeコード単位)を指し、0からlength()- 1までの範囲です。指定されたインデックス位置の指定された char値が上位サロゲート範囲に含まれており、それに続くインデックスがStringの長さ未満であり、かつそのインデックス位置のchar値が下位サロゲート範囲に含まれている場合、このサロゲート・ペアに対応する補助コード・ポイントが返されます。 それ以外の場合は、指定されたインデックスにあるchar値が返されます。- パラメータ:
- index-- char値へのインデックス
- 戻り値:
- 指定されたindexにある文字のコード・ポイント値
- 例外:
- IndexOutOfBoundsException-- index引数が負の値、または文字列の長さと同じかこれより大きい値の場合。
- 導入されたバージョン:
- 1.5
 
 - 
codePointBeforepublic int codePointBefore(int index) 指定されたインデックスの前の文字(Unicodeコード・ポイント)を返します。 インデックスはchar値(Unicodeコード単位)を参照し、その範囲は1-lengthになります。(index - 1)のchar値が下位サロゲート範囲に含まれており、(index - 2)が負でなく、かつ(index - 2)のchar値が上位サロゲートに含まれている場合、そのサロゲート・ペアの補助コード・ポイント値が返されます。index - 1のchar値が、ペアになっていない下位サロゲートであるか、または上位サロゲートである場合、そのサロゲート値が返されます。- パラメータ:
- index- 返すべきコード・ポイントの直後のインデックス
- 戻り値:
- 指定されたインデックスの前にあるUnicodeコード・ポイント値。
- 例外:
- IndexOutOfBoundsException-- index引数が1未満であるか、またはこの文字列の長さより大きい値の場合。
- 導入されたバージョン:
- 1.5
 
 - 
codePointCountpublic int codePointCount(int beginIndex, int endIndex)このStringの指定されたテキスト範囲のUnicodeコード・ポイントの数を返します。 テキスト範囲は、指定されたbeginIndexからインデックスendIndex - 1の位置のcharまでです。 したがって、テキスト範囲の長さ(char数)は、endIndex-beginIndexになります。 テキスト範囲内でペアになっていないサロゲートは、それぞれ1つのコード・ポイントとして数えられます。- パラメータ:
- beginIndex- テキスト範囲内の最初の- charへのインデックス。
- endIndex- テキスト範囲内の最後の- charの直後のインデックス。
- 戻り値:
- 指定されたテキスト範囲内のUnicodeコード・ポイントの数
- 例外:
- IndexOutOfBoundsException-- beginIndexが負であるか、- endIndexがこの- Stringの長さより大きいか、あるいは- beginIndexが- endIndexより大きい場合。
- 導入されたバージョン:
- 1.5
 
 - 
offsetByCodePointspublic int offsetByCodePoints(int index, int codePointOffset)このString内で、指定されたindexからcodePointOffsetコード・ポイント分だけオフセットされた位置のインデックスを返します。indexとcodePointOffsetで指定されるテキスト範囲内でペアになっていないサロゲートは、それぞれ1つのコード・ポイントとして数えられます。- パラメータ:
- index- オフセットされるインデックス
- codePointOffset- オフセット(コード・ポイント数)
- 戻り値:
- このString内でのインデックス
- 例外:
- IndexOutOfBoundsException-- indexが負の値、またはこの- Stringの長さよりも大きい場合、- codePointOffsetが正の値であり- indexから始まる部分文字列の持つコード・ポイント数が- codePointOffsetコード・ポイント数よりも少ない場合、または- codePointOffsetが負の値で- indexの前の部分文字列の持つ値が- codePointOffsetコード・ポイントの絶対値よりも小さい場合。
- 導入されたバージョン:
- 1.5
 
 - 
getCharspublic void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)この文字列から、コピー先の文字配列に文字をコピーします。コピーされる最初の文字のインデックスは srcBegin、コピーされる最後の文字のインデックスはsrcEnd-1です。したがって、コピーされる文字数はsrcEnd-srcBeginとなります。 文字はdstの部分配列にコピーされます。始点のインデックスはdstBeginで、終点のインデックスは次のようになります。dstBegin + (srcEnd-srcBegin) - 1- パラメータ:
- srcBegin- コピー対象文字列内の最初の文字のインデックス。
- srcEnd- コピー対象文字列内の最後の文字のあとのインデックス。
- dst- 転送先配列。
- dstBegin- コピー先の配列内での開始座標。
- 例外:
- IndexOutOfBoundsException- 次のどれかに当てはまる場合。- srcBeginが負である。
- srcBeginが次より大きい:- srcEnd
- srcEndがこの文字列の長さより大きい
- dstBeginが負である
- dstBegin+(srcEnd-srcBegin)が次より大きい:- dst.length
 
 
 - 
getBytes@Deprecated(since="1.1") public void getBytes(int srcBegin, int srcEnd, byte[] dst, int dstBegin) 非推奨。このメソッドでは、文字からバイトへの変換が正しく行われません。 JDK 1.1では、文字からバイトへの変換には、プラットフォームのデフォルト文字セットを使用するgetBytes()メソッドの使用が推奨されます。この文字列から、転送先のバイト配列に文字をコピーします。 各バイトは対応する文字の下位8ビットを受け取ります。 各文字の上位8ビットはコピーされず、転送されることはありません。コピーする最初の文字はインデックス srcBegin、コピーする最後の文字はインデックスsrcEnd-1になります。 コピーする文字の合計数はsrcEnd-srcBeginです。 文字をバイトに変換したものがdstの部分配列にコピーされますが、その部分配列の始点のインデックスはdstBeginで、終点のインデックスは次のようになります。dstBegin + (srcEnd-srcBegin) - 1- パラメータ:
- srcBegin- コピー対象文字列内の最初の文字のインデックス
- srcEnd- コピー対象文字列内の最後の文字のあとのインデックス
- dst- コピー先配列
- dstBegin- コピー先の配列内での開始オフセット
- 例外:
- IndexOutOfBoundsException- 次のどれかに当てはまる場合。-  srcBeginが負である
-  srcBeginが次より大きい:srcEnd
-  srcEndがこの文字列の長さより大きい
-  dstBeginが負である
-  dstBegin+(srcEnd-srcBegin)が次より大きい:dst.length
 
-  
 
 - 
getBytespublic byte[] getBytes(String charsetName) throws UnsupportedEncodingException 指定された文字セットを使用してこのStringをバイト・シーケンスにエンコードし、結果を新規バイト配列に格納します。指定された文字セットでこの文字列をエンコードできない場合、このメソッドの動作は指定されません。 エンコード処理をより強力に制御する必要がある場合は、 CharsetEncoderクラスを使用してください。- パラメータ:
- charsetName- サポートされているcharsetの名前
- 戻り値:
- 結果のバイト配列
- 例外:
- UnsupportedEncodingException- 指定された文字セットがサポートされていない場合
- 導入されたバージョン:
- 1.1
 
 - 
getBytespublic byte[] getBytes(Charset charset) 指定された文字セットを使用してこのStringをバイト・シーケンスに符号化し、結果を新規バイト配列に格納します。このメソッドは、不正入力シーケンスやマップ不可文字シーケンスを、この文字セットのデフォルトの置換バイト配列で置き換えます。 エンコード処理をより強力に制御する必要がある場合は、 CharsetEncoderクラスを使用してください。- パラメータ:
- charset-- Stringのエンコード化に使用されるCharset
- 戻り値:
- 結果のバイト配列
- 導入されたバージョン:
- 1.6
 
 - 
getBytespublic byte[] getBytes() プラットフォームのデフォルトの文字セットを使用してこのStringをバイト・シーケンスにエンコード化し、結果を新規バイト配列に格納します。デフォルトの文字セットでこの文字列をエンコード化できない場合、このメソッドの動作は指定されません。 エンコード処理をより強力に制御する必要がある場合は、 CharsetEncoderクラスを使用してください。- 戻り値:
- 結果のバイト配列
- 導入されたバージョン:
- 1.1
 
 - 
equalspublic boolean equals(Object anObject) この文字列と指定されたオブジェクトを比較します。 引数がnullではなく、このオブジェクトと同じ文字シーケンスを表すStringオブジェクトである場合にだけ、結果はtrueになります。細かい文字列の比較については、 Collatorを参照してください。- オーバーライド:
- equals、クラス:- Object
- パラメータ:
- anObject- この- Stringと比較するオブジェクト
- 戻り値:
- 指定されたオブジェクトがこの文字列に等しいStringを表す場合はtrue、それ以外の場合はfalse
- 関連項目:
- compareTo(String),- equalsIgnoreCase(String)
 
 - 
contentEqualspublic boolean contentEquals(StringBuffer sb) この文字列と指定されたStringBufferを比較します。 結果がtrueになるのは、このStringが指定されたStringBufferと同じ文字シーケンスを表す場合だけです。 このメソッドは、StringBufferとの同期をとります。細かい文字列の比較については、 Collatorを参照してください。- パラメータ:
- sb- この- Stringと比較する- StringBuffer
- 戻り値:
- このStringが、指定されたStringBufferと同じ文字シーケンスを表す場合はtrue。そうでない場合はfalse
- 導入されたバージョン:
- 1.4
 
 - 
contentEqualspublic boolean contentEquals(CharSequence cs) この文字列と指定されたCharSequenceを比較します。 このStringが、指定されたシーケンスと同じ文字値シーケンスを表す場合にだけ、結果がtrueになります。CharSequenceがStringBufferである場合、このメソッドはそれとの同期をとるので注意してください。細かい文字列の比較については、 Collatorを参照してください。- パラメータ:
- cs- この- Stringと比較されるシーケンス
- 戻り値:
- このStringが、指定されたシーケンスと同じ文字値シーケンスを表す場合はtrue。そうでない場合はfalse
- 導入されたバージョン:
- 1.5
 
 - 
equalsIgnoreCasepublic boolean equalsIgnoreCase(String anotherString) 大文字と小文字を区別せずに、このStringを別のStringと比較します。 長さが同じで、2つの文字列内の対応する文字が大文字と小文字の区別なしで等しい場合、2つの文字列は大文字と小文字の区別なしで等しいと見なされます。次のどれかに該当する場合に、 c1とc2という2つの文字は大文字小文字の区別なしで等しいと見なされます。-  2つの文字が等しい(==演算子による比較)
-  各文字に対してCharacter.toLowerCase(Character.toUpperCase(char))を呼び出すと同じ結果が得られます
 このメソッドはロケールを考慮せず、特定のロケールでは結果が不満足になることに注意してください。 Collatorクラスはロケールに依存した比較を提供します。- パラメータ:
- anotherString- この- Stringと比較する- String
- 戻り値:
- 引数がnullでなく、同等のString(大文字と小文字の区別なし)を表す場合はtrue、それ以外の場合はfalse
- 関連項目:
- equals(Object)
 
-  2つの文字が等しい(
 - 
compareTopublic int compareTo(String anotherString) 2つの文字列を辞書的に比較します。 比較は文字列内のそれぞれの文字のUnicode値に基づいて行われます。 このStringオブジェクトによって表される文字シーケンスが、引数文字列によって表される文字シーケンスと辞書的に比較されます。 このStringオブジェクトが辞書的に引数文字列より前にある場合は、結果は負の整数になります。 このStringオブジェクトが辞書的に引数文字列の後ろにある場合、結果は正の整数になります。 それらの文字列が等しい場合、結果はゼロになります。compareToから0が返されるのは、equals(Object)メソッドからtrueが返される場合だけです。辞書的の順序の定義を示します。 2つの文字列が異なる場合、両方の文字列に対して有効なインデックスに位置する文字が異なるか、2つの文字列の長さが異なるか、あるいはその両方が該当します。 1つ以上のインデックス位置に異なる文字がある場合、kをそのようなインデックスの最小値にします。 <演算子を使用して決定された、位置kの文字が小さい値の文字列は、他の文字列の辞書的に先行します。 この場合、compareToは2つの文字列で位置kにある2つの文字の値の差を返します。これは次の式で表される値になります。
 有効なすべてのインデックス位置における文字が同じ場合は、短い方の文字列が辞書的に前になります。 この場合は、this.charAt(k)-anotherString.charAt(k) compareToは文字列の長さの差を返します。これは次の式で表される値になります。this.length()-anotherString.length() 細かい文字列の比較については、 Collatorを参照してください。- 定義:
- compareTo、インタフェース:- Comparable<String>
- パラメータ:
- anotherString- 比較対象の- String。
- 戻り値:
- 引数文字列がこの文字列に等しい場合は、値0。この文字列が文字列引数より辞書式に小さい場合は、0より小さい値。この文字列が文字列引数より辞書式に大きい場合は、0より大きい値。
 
 - 
compareToIgnoreCasepublic int compareToIgnoreCase(String str) 大文字と小文字の区別なしで、2つの文字列を辞書的に比較します。 このメソッドは、文字列の正規化バージョンでcompareToを呼び出して得られた符号を持つ整数を返します。ここでは、各文字でCharacter.toLowerCase(Character.toUpperCase(character))を呼び出すことで大文字と小文字の違いがなくなります。このメソッドはロケールを考慮しないので、一部のロケールでは、正しい順序に並べられないことがあります。 Collatorクラスはロケールに依存した比較を提供します。- パラメータ:
- str- 比較対象の- String。
- 戻り値:
- 大文字と小文字の区別なしで、指定されたStringがこのStringより大きい場合は負の整数、同じ場合は0、小さい場合は正の整数。
- 導入されたバージョン:
- 1.2
- 関連項目:
- Collator
 
 - 
regionMatchespublic boolean regionMatches(int toffset, String other, int ooffset, int len)2つの文字列領域が等しいかどうかを判定します。この Stringオブジェクトの部分文字列が、引数otherの部分文字列と比較されます。 これらの部分文字列が同じ文字シーケンスを表す場合、結果はtrueになります。 比較の対象となるStringオブジェクトの部分文字列は、インデックスtoffsetから始まり、長さはlenです。 比較の対象となるotherの部分文字列はインデックスooffsetから始まり、長さはlenです。 次のどれかに該当する場合にだけ、結果はfalseになります。- toffsetが負の場合。
- ooffsetが負の場合。
- toffset+lenがこの- Stringオブジェクトの長さより大きい。
- ooffset+lenが引数otherの長さより大きい。
- lenより小さく、負でない、次のような整数kがある:- this.charAt(toffset +k- ) != other.charAt(ooffset +k- )
 このメソッドはロケールを考慮しないことに注意してください。 Collatorクラスはロケールに依存した比較を提供します。- パラメータ:
- toffset- この文字列内の部分領域の開始オフセット。
- other- 文字列引数。
- ooffset- 文字列引数内の部分領域の開始オフセット。
- len- 比較対象の文字数。
- 戻り値:
- この文字列の指定された部分領域が文字列引数の指定された部分領域と完全に一致する場合はtrue、そうでない場合はfalse。
 
 - 
regionMatchespublic boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)2つの文字列領域が等しいかどうかを判定します。この Stringオブジェクトの部分文字列が、引数otherの部分文字列と比較されます。 これらの部分文字列が同じ文字シーケンスを表す場合、結果はtrueになります。ignoreCaseがtrueの場合にのみ、大文字と小文字が区別されません。 比較の対象となるStringオブジェクトの部分文字列は、インデックスtoffsetから始まり、長さはlenです。 比較の対象となるotherの部分文字列はインデックスooffsetから始まり、長さはlenです。 次のどれかに該当する場合にだけ、結果はfalseになります。- toffsetが負の場合。
- ooffsetが負の場合。
- toffset+lenがこの- Stringオブジェクトの長さより大きい。
- ooffset+lenが引数otherの長さより大きい。
- ignoreCaseが- falseであり、lenより小さく、負でない、次のような整数- kがある:- this.charAt(toffset+k) != other.charAt(ooffset+k) 
- ignoreCaseが- trueであり、lenより小さく、負でない、次のような整数- kがある:- Character.toLowerCase(Character.toUpperCase(this.charAt(toffset+k))) != Character.toLowerCase(Character.toUpperCase(other.charAt(ooffset+k)))
 このメソッドはロケールを考慮しないため、 ignoreCaseがtrueの場合、特定のロケールでは不満足な結果になります。Collatorクラスはロケールに依存した比較を提供します。- パラメータ:
- ignoreCase-- trueの場合、文字の比較の際に大文字小文字は区別されない。
- toffset- この文字列内の部分領域の開始オフセット。
- other- 文字列引数。
- ooffset- 文字列引数内の部分領域の開始オフセット。
- len- 比較対象の文字数。
- 戻り値:
- この文字列の指定された部分領域が文字列引数の指定された部分領域と一致する場合はtrue、そうでない場合はfalse。 一致した場合に、大文字と小文字が区別されているかどうかは引数ignoreCaseによって決まる。
 
 - 
startsWithpublic boolean startsWith(String prefix, int toffset) この文字列の指定されたインデックス以降の部分文字列が、指定された接頭辞で始まるかどうかを判定します。- パラメータ:
- prefix- 接頭辞。
- toffset- この文字列の比較を開始する位置。
- 戻り値:
- 引数によって表される文字シーケンスが、インデックスtoffsetで始まるこのオブジェクトの部分文字列の接頭辞である場合はtrue、そうでない場合はfalse。toffsetが負の値の場合、あるいはStringオブジェクトの長さより大きい場合、結果はfalse。そうでない場合は、結果は次の式の結果と同じthis.substring(toffset).startsWith(prefix)
 
 - 
startsWithpublic boolean startsWith(String prefix) この文字列が、指定された接頭辞で始まるかどうかを判定します。- パラメータ:
- prefix- 接頭辞。
- 戻り値:
- 引数によって表される文字シーケンスが、この文字列によって表される文字シーケンスの接頭辞である場合はtrue、そうでない場合はfalse。 引数が空の文字列の場合や、equals(Object)メソッドによる判定においてこのStringオブジェクトに等しい場合にもtrueが返される。
- 導入されたバージョン:
- 1.0
 
 - 
endsWithpublic boolean endsWith(String suffix) この文字列が、指定された接尾辞で終るかどうかを判定します。- パラメータ:
- suffix- 接尾辞。
- 戻り値:
- 引数によって表される文字シーケンスが、このオブジェクトによって表される文字シーケンスの接尾辞である場合はtrue、そうでない場合はfalse。 引数が空の文字列の場合や、equals(Object)メソッドによる判定においてこのStringオブジェクトに等しい場合の結果はtrueになる。
 
 - 
hashCodepublic int hashCode() この文字列のハッシュ・コードを返します。Stringのハッシュ・コードは、次の方法で計算します。s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1] int算術が使用されますが、ここで、s[i]は文字列のi番目の文字であり、nは文字列の長さであり、^は累乗を示します。 空の文字列のハッシュ値は0です。- オーバーライド:
- hashCode、クラス:- Object
- 戻り値:
- このオブジェクトのハッシュ・コード値。
- 関連項目:
- Object.equals(java.lang.Object),- System.identityHashCode(java.lang.Object)
 
 - 
indexOfpublic int indexOf(int ch) この文字列内で、指定された文字が最初に出現する位置のインデックスを返します。 値chを持つ文字がこのStringオブジェクトによって表される文字シーケンス内にある場合、最初に出現する位置のインデックス(Unicodeコード単位)が返されます。chの値が0から0xFFFFの範囲にある場合、次の式がtrueとなるような最小値kが返されます。
 がtrueである。this.charAt(k) == ch chがほかの値の場合、次の式がtrueとなるような最小値kです。
 がtrueである。 該当する文字がこの文字列内にない場合は、this.codePointAt(k) == ch -1が返されます。- パラメータ:
- ch- 文字(Unicodeコード・ポイント)。
- 戻り値:
- このオブジェクトによって表される文字シーケンス内で、指定された文字が最初に出現する位置のインデックス。文字がない場合は-1。
 
 - 
indexOfpublic int indexOf(int ch, int fromIndex)この文字列内で、指定されたインデックスから検索を開始し、指定された文字が最初に出現する位置のインデックスを返します。値 chを持つ文字が、このStringオブジェクトによって表される文字シーケンスのfromIndexより大きいか同じインデックス位置にある場合、該当する最初のインデックスが返されます。chの値が0から0xFFFFの範囲にある場合、次の式がtrueとなるような最小値kが返されます。
 がtrueである。(this.charAt(k) == ch) &&(k >= fromIndex)chがほかの値の場合、次の式がtrueとなるような最小値kです。
 がtrueである。 いずれの場合も、そのような文字がこの文字列内の位置(this.codePointAt(k) == ch) &&(k >= fromIndex)fromIndexかそれより後に存在しない場合は、-1が返されます。fromIndexの値に対して制約はない。 負の値の場合は、ゼロの場合と同じ結果になります。この文字列全体が検索されます。 この文字列の長さより大きい場合は、この文字列の長さに等しい場合と同じ結果になり、-1が返されます。すべてのインデックスは、 char値(Unicodeコード単位)で指定されます。- パラメータ:
- ch- 文字(Unicodeコード・ポイント)。
- fromIndex- 検索開始位置のインデックス。
- 戻り値:
- このオブジェクトによって表される文字列で、指定された文字がfromIndexと同じかこれより大きいインデックス位置にある場合は、最初に出現した位置のインデックス。文字がない場合は-1。
 
 - 
lastIndexOfpublic int lastIndexOf(int ch) この文字列内で、指定された文字が最後に出現する位置のインデックスを返します。ch値が0から0xFFFFの範囲にある場合、返されるインデックス(Unicodeコード単位)は、次の式に該当する最大値kです。
 がtrueである。this.charAt(k) == ch chがほかの値の場合、次の式がtrueとなるような最大値kです。
 がtrueである。 該当する文字がこの文字列内にない場合は、this.codePointAt(k) == ch -1が返されます。Stringの検索は最後の文字から開始され、先頭方向に行われます。- パラメータ:
- ch- 文字(Unicodeコード・ポイント)。
- 戻り値:
- このオブジェクトによって表される文字シーケンス内で、指定された文字が最後に出現する位置のインデックス。文字がない場合は-1。
 
 - 
lastIndexOfpublic int lastIndexOf(int ch, int fromIndex)この文字列内で、指定された文字が最後に出現する位置のインデックスを返します(検索は指定されたインデックスから開始され、先頭方向に行われる)。ch値が0から0xFFFFの範囲にある場合、返されるインデックスは、次の式に該当する最大値kです。
 がtrueである。(this.charAt(k) == ch) &&(k <= fromIndex)chがほかの値の場合、次の式がtrueとなるような最大値kです。
 がtrueである。 いずれの場合も、そのような文字がこの文字列内の位置(this.codePointAt(k) == ch) &&(k <= fromIndex)fromIndexかそれより前に存在しない場合は、-1が返されます。すべてのインデックスは、 char値(Unicodeコード単位)で指定されます。- パラメータ:
- ch- 文字(Unicodeコード・ポイント)。
- fromIndex- 検索開始位置のインデックス。- fromIndexの値に対して制約はない。 この文字列の長さと同じかこれより大きい場合は、この文字列の長さより1小さい場合と同じ結果になり、この文字列全体が検索される。 負の値の場合は、-1の場合と同じ結果になり、-1が返される。
- 戻り値:
- このオブジェクトによって表される文字シーケンス内で、指定された文字がfromIndexと同じかこれより小さいインデックス位置に最後に出現する位置のインデックス。指定された文字がその位置より前にない場合は-1。
 
 - 
indexOfpublic int indexOf(String str) この文字列内で、指定された部分文字列が最初に出現する位置のインデックスを返します。返されるインデックスは、次の式がtrueとなるような最小値 kになります。
 このようなthis.startsWith(str, k)kの値が存在しない場合、-1が返されます。- パラメータ:
- str- 検索対象の部分文字列。
- 戻り値:
- 指定された部分文字列が最初に出現する位置のインデックス。そのような出現箇所がない場合は-1。
 
 - 
indexOfpublic int indexOf(String str, int fromIndex) 指定されたインデックス以降で、指定された部分文字列がこの文字列内で最初に出現する位置のインデックスを返します。返されるインデックスは、次の式がtrueとなるような最小値 kになります。
 このようなk >= Math.min(fromIndex, this.length()) && this.startsWith(str, k)kの値が存在しない場合、-1が返されます。- パラメータ:
- str- 検索対象の部分文字列。
- fromIndex-検索開始位置のインデックス。
- 戻り値:
- 指定されたインデックス以降で、指定された部分文字列が最初に出現する位置のインデックス。そのような出現箇所がない場合は-1。
 
 - 
lastIndexOfpublic int lastIndexOf(String str) この文字列内で、指定された部分文字列が最後に出現する位置のインデックスを返します。 空の文字列「」が最後に出現する位置は、this.length()と見なされます。返されるインデックスは、次の式がtrueとなるような最大値 kになります。
 このようなthis.startsWith(str, k)kの値が存在しない場合、-1が返されます。- パラメータ:
- str- 検索対象の部分文字列。
- 戻り値:
- 指定された部分文字列が最後に出現する位置のインデックス。そのような出現箇所がない場合は-1。
 
 - 
lastIndexOfpublic int lastIndexOf(String str, int fromIndex) この文字列内で、指定された部分文字列が最後に出現する位置のインデックスを返します(検索は指定されたインデックスから開始され、先頭方向に行われる)。返されるインデックスは、次の式がtrueとなるような最大値 kになります。
 このようなk <= Math.min(fromIndex, this.length()) && this.startsWith(str, k)kの値が存在しない場合、-1が返されます。- パラメータ:
- str- 検索対象の部分文字列。
- fromIndex- 検索開始位置のインデックス。
- 戻り値:
- 指定された部分文字列が最後に出現する位置のインデックス(指定されたインデックスから逆方向に検索を行う)。そのような出現箇所がない場合は-1。
 
 - 
substringpublic String substring(int beginIndex) この文字列の部分文字列である文字列を返します。 部分文字列は指定されたインデックスで始まり、この文字列の最後までになります。例 "unhappy".substring(2) returns "happy" "Harbison".substring(3) returns "bison" "emptiness".substring(9) returns "" (an empty string) - パラメータ:
- beginIndex- 開始インデックス(この値を含む)。
- 戻り値:
- 指定された部分文字列。
- 例外:
- IndexOutOfBoundsException-- beginIndexが負の値の場合、あるいはこの- Stringオブジェクトの長さより大きい場合。
 
 - 
substringpublic String substring(int beginIndex, int endIndex) この文字列の部分文字列である文字列を返します。 部分文字列は、指定されたbeginIndexから始まり、インデックスendIndex - 1にある文字までです。 したがって、部分文字列の長さはendIndex-beginIndexになります。例 "hamburger".substring(4, 8) returns "urge" "smiles".substring(1, 5) returns "mile" - パラメータ:
- beginIndex- 開始インデックス(この値を含む)。
- endIndex- 終了インデックス(この値を含まない)。
- 戻り値:
- 指定された部分文字列。
- 例外:
- IndexOutOfBoundsException-- beginIndexが負であるか、- endIndexがこの- Stringオブジェクトの長さより大きいか、あるいは- beginIndexが- endIndexより大きい場合。
 
 - 
subSequencepublic CharSequence subSequence(int beginIndex, int endIndex) このシーケンスのサブシーケンスである文字シーケンスを返します。次のフォームのメソッド呼出しは、 
 次の呼び出しと正確に同じ動作になります。str.subSequence(begin, end) str.substring(begin, end) - 定義:
- subSequence、インタフェース:- CharSequence
- APIの注:
- このメソッドが定義されたのは、StringクラスがCharSequenceインタフェースを実装できるようにするためです。
- パラメータ:
- beginIndex- 開始インデックス(この値を含む)。
- endIndex- 終了インデックス(この値を含まない)。
- 戻り値:
- 指定されたサブシーケンス。
- 例外:
- IndexOutOfBoundsException-- beginIndexまたは- endIndexが負の場合、- endIndexが- length()より大きい場合、または- beginIndexが- endIndexより大きい場合
- 導入されたバージョン:
- 1.4
 
 - 
concatpublic String concat(String str) 指定された文字列をこの文字列の最後に連結します。引数文字列の長さが 0の場合は、このStringオブジェクトが返されます。 それ以外の場合は、このStringオブジェクトで表される文字列と引数文字列で表される文字列とを連結したものを表すStringオブジェクトが返されます。例 "cares".concat("s") returns "caress" "to".concat("get").concat("her") returns "together"- パラメータ:
- str- この- Stringの最後に連結される- String。
- 戻り値:
- このオブジェクトの文字列の後に文字列引数で表される文字を連結したものを表す文字列。
 
 - 
replacepublic String replace(char oldChar, char newChar) この文字列内にあるすべてのoldCharをnewCharに置換した結果生成される文字列を返します。文字 oldCharがこのStringオブジェクトによって表される文字列内にない場合は、このStringオブジェクトへの参照が返されます。 それ以外の場合は、このStringオブジェクトで表される文字列と同じ文字列を表すStringオブジェクトが返されます。ただし、文字列内のoldCharはすべてnewCharに置換されます。例 "mesquite in your cellar".replace('e', 'o') returns "mosquito in your collar" "the war of baronets".replace('r', 'y') returns "the way of bayonets" "sparring with a purple porpoise".replace('p', 't') returns "starring with a turtle tortoise" "JonL".replace('q', 'x') returns "JonL" (no change)- パラメータ:
- oldChar- 以前の文字。
- newChar- 新しい文字。
- 戻り値:
- この文字列内のすべてのoldCharをnewCharに置換することによって生成された文字列。
 
 - 
matchespublic boolean matches(String regex) この文字列が、指定された正規表現と一致するかどうかを判定します。このフォームのメソッド呼び出しstr .matches(regex)では、次の式と正確に同じ結果が得られます。Pattern.matches(regex, str)- パラメータ:
- regex- この文字列との一致を判定する正規表現
- 戻り値:
- この文字列が指定された正規表現と一致する場合にだけ、trueが返される
- 例外:
- PatternSyntaxException- 正規表現の構文が無効な場合
- 導入されたバージョン:
- 1.4
- 関連項目:
- Pattern
 
 - 
containspublic boolean contains(CharSequence s) この文字列が指定されたchar値のシーケンスを含む場合に限りtrueを返します。- パラメータ:
- s- 検索するシーケンス
- 戻り値:
- この文字列がsを含む場合はtrue。そうでない場合はfalse
- 導入されたバージョン:
- 1.5
 
 - 
replaceFirstpublic String replaceFirst(String regex, String replacement) 指定された正規表現に一致する、この文字列の最初の部分文字列に対し、指定された置換を実行します。このフォームのメソッド呼び出しstr .replaceFirst(regex,repl)では、次の式と正確に同じ結果が得られます。Pattern.compile(regex).matcher(str).replaceFirst(repl)置換文字列内でバックスラッシュ( \)とドル記号($)を使用すると、それをリテラル置換文字列として処理した場合とは結果が異なることがあります。Matcher.replaceFirst(java.lang.String)を参照してください。 必要に応じて、Matcher.quoteReplacement(java.lang.String)を使用して、これらの文字に特別な意味を持たせないようにしてください。- パラメータ:
- regex- この文字列との一致を判定する正規表現
- replacement- 最初に一致するものに置き換えられる文字列
- 戻り値:
- 結果となるString
- 例外:
- PatternSyntaxException- 正規表現の構文が無効な場合
- 導入されたバージョン:
- 1.4
- 関連項目:
- Pattern
 
 - 
replaceAllpublic String replaceAll(String regex, String replacement) 指定された正規表現に一致する、この文字列の各部分文字列に対し、指定された置換を実行します。このフォームのメソッド呼び出しstr .replaceAll(regex,repl)では、次の式と正確に同じ結果が得られます。Pattern.compile(regex).matcher(str).replaceAll(repl)置換文字列内でバックスラッシュ( \)とドル記号($)を使用すると、それをリテラル置換文字列として処理した場合とは結果が異なることがあります。Matcher.replaceAllを参照してください。 必要に応じて、Matcher.quoteReplacement(java.lang.String)を使用して、これらの文字に特別な意味を持たせないようにしてください。- パラメータ:
- regex- この文字列との一致を判定する正規表現
- replacement- 一致するものそれぞれに置き換えられる文字列
- 戻り値:
- 結果となるString
- 例外:
- PatternSyntaxException- 正規表現の構文が無効な場合
- 導入されたバージョン:
- 1.4
- 関連項目:
- Pattern
 
 - 
replacepublic String replace(CharSequence target, CharSequence replacement) リテラル・ターゲット・シーケンスに一致するこの文字列の部分文字列を、指定されたリテラル置換シーケンスに置き換えます。 置換は、文字列の先頭から始まり終端まで進みます。たとえば、文字列「aaa」の「aa」を「b」に置換すると、結果は「ab」ではなく、「ba」です。- パラメータ:
- target- 置換されるchar値のシーケンス
- replacement- char値の置換シーケンス
- 戻り値:
- 結果として得られる文字列
- 導入されたバージョン:
- 1.5
 
 - 
splitpublic String[] split(String regex, int limit) この文字列を、指定された正規表現に一致する位置で分割します。この文字列の各部分文字列を含むメソッドにより返される配列は、指定された式に一致する別の部分文字列、またはその文字列の最後で終了します。 配列内の部分文字列の順序は、この文字列内で出現する順序になります。 入力されたどの部分とも式が一致しない場合、配列は1つの要素(つまり、この文字列)だけを保持します。 この文字列の先頭に、正の幅のマッチがある場合、結果の配列の先頭に、空の先頭部分文字列が含まれます。 先頭のゼロの幅の一致では、そのような空の先頭の部分文字列は生成されません。 limitパラメータは、このパターンの適用回数を制御するため、結果となる配列の長さに影響を及ぼします。- 「制限」が正の場合、パターンはほとんどの「制限」に適用されます。-1回は配列の長さが「制限」を超えることはなく、最後に一致したデリミタを超えるすべての入力が配列の最後のエントリに含まれます。 
- 「制限」がゼロの場合、パターンは可能なかぎり何度も適用され、配列には任意の長さを指定でき、後続の空の文字列は破棄されます。 
- 「制限」が負の場合、パターンは可能なかぎり適用され、配列の長さは任意になります。 
 たとえば、次のパラメータが指定された場合の、文字列 "boo:and:foo"の結果を示します。正規表現 制限 結果 : 2 { "boo", "and:foo" }5 { "boo", "and", "foo" }-2 { "boo", "and", "foo" }o 5 { "b", "", ":and:f", "", "" }-2 { "b", "", ":and:f", "", "" }0 { "b", "", ":and:f" }このフォームのメソッド呼び出しstr. split(regex,n)では、次の式と同じ結果が得られます。Pattern.compile(regex).split(str, n)- パラメータ:
- regex- 正規表現の区切り
- limit- 結果のしきい値(上記を参照)
- 戻り値:
- この文字列を指定された正規表現に一致する位置で分割して計算された文字列の配列
- 例外:
- PatternSyntaxException- 正規表現の構文が無効な場合
- 導入されたバージョン:
- 1.4
- 関連項目:
- Pattern
 
 - 
splitpublic String[] split(String regex) この文字列を、指定された正規表現に一致する位置で分割します。このメソッドの動作は、2つの引数を取る splitメソッドを、指定された式および制限引数ゼロを指定して呼び出した場合と同じになります。 つまり、結果として得られる配列には後続の空の文字列は含まれません。たとえば、次の式が指定された場合の、文字列 "boo:and:foo"の結果を示します。正規表現 結果 : { "boo", "and", "foo" }o { "b", "", ":and:f" }- パラメータ:
- regex- 正規表現の区切り
- 戻り値:
- この文字列を指定された正規表現に一致する位置で分割して計算された文字列の配列
- 例外:
- PatternSyntaxException- 正規表現の構文が無効な場合
- 導入されたバージョン:
- 1.4
- 関連項目:
- Pattern
 
 - 
joinpublic static String join(CharSequence delimiter, CharSequence... elements) 指定されたdelimiterのコピーを使用して結合されたCharSequence要素のコピーからなる新しいStringを返します。次に例を示します。 要素がnullの場合は、String message = String.join("-", "Java", "is", "cool"); // message returned is: "Java-is-cool""null"が追加されることに注意してください。- パラメータ:
- delimiter- 各要素を区切る区切り文字
- elements- 結合する要素。
- 戻り値:
- delimiterで区切られた- elementsからなる新しい- String
- 例外:
- NullPointerException-- delimiterまたは- elementsが- nullである場合
- 導入されたバージョン:
- 1.8
- 関連項目:
- StringJoiner
 
 - 
joinpublic static String join(CharSequence delimiter, Iterable<? extends CharSequence> elements) 指定されたdelimiterのコピーを使用して結合されたCharSequence要素のコピーからなる新しいStringを返します。次に例を示します。 個々の要素がList<String> strings = List.of("Java", "is", "cool"); String message = String.join(" ", strings); //message returned is: "Java is cool" Set<String> strings = new LinkedHashSet<>(List.of("Java", "is", "very", "cool")); String message = String.join("-", strings); //message returned is: "Java-is-very-cool"nullの場合は、"null"が追加されることに注意してください。- パラメータ:
- delimiter- 結果となる- String内の- elementsのそれぞれを区切るために使用される文字シーケンス
- elements-- elementsが結合される- Iterable。
- 戻り値:
- elements引数からなる新しい- String
- 例外:
- NullPointerException-- delimiterまたは- elementsが- nullである場合
- 導入されたバージョン:
- 1.8
- 関連項目:
- join(CharSequence,CharSequence...),- StringJoiner
 
 - 
toLowerCasepublic String toLowerCase(Locale locale) 指定されたLocaleのルールを使って、このString内のすべての文字を小文字に変換します。 ケース・マッピングは、Characterクラスで指定されたUnicode仕様バージョンに基づいています。 ケース・マッピングは常に1:1の文字マッピングになるとは限らないため、結果として得られるStringが元のStringと長さが異なる場合があります。小文字のマッピング例を、次の表に示します。 ロケールの言語コード 大文字 小文字 説明 tr (トルコ語) \u0130 \u0069 上に点が付いた大文字のI ->小文字のi tr (トルコ語) \u0049 \u0131 大文字のI ->点のない小文字のi (すべて) French Fries french fries String内の文字すべてを小文字に変換 (すべて) ΙΧΘΥΣ ιχθυσ String内の文字すべてを小文字に変換 - パラメータ:
- locale- このロケールの大文字小文字変換ルールを使用する
- 戻り値:
- 小文字に変換されたString。
- 導入されたバージョン:
- 1.1
- 関連項目:
- toLowerCase(),- toUpperCase(),- toUpperCase(Locale)
 
 - 
toLowerCasepublic String toLowerCase() デフォルト・ロケールのルールを使って、このString内のすべての文字を小文字に変換します。 これは、toLowerCase(Locale.getDefault())の呼び出しと同等です。注: このメソッドはロケールに依存するため、単独でロケールと解釈されるような文字列に使用すると、予期せぬ結果を引き起こすことがあります。 例として、プログラミング言語識別子、プロトコル・キー、HTMLタグがあります。 たとえば、トルコ語ロケールの "TITLE".toLowerCase()は"t\u0131tle"を返します。ここで、「\u0131」は点のないラテン小文字のIの文字です。 ロケールに依存しない文字列の正しい結果を取得するには、toLowerCase(Locale.ROOT)を使用します。- 戻り値:
- 小文字に変換されたString。
- 関連項目:
- toLowerCase(Locale)
 
 - 
toUpperCasepublic String toUpperCase(Locale locale) 指定されたLocaleのルールを使って、このString内のすべての文字を大文字に変換します。 ケース・マッピングは、Characterクラスで指定されたUnicode仕様バージョンに基づいています。 ケース・マッピングは常に1:1の文字マッピングになるとは限らないため、結果として得られるStringが元のStringと長さが異なる場合があります。ロケール依存および1:Mのケース・マッピングの例を、次の表に示します。 ロケールの言語コード 小文字 大文字 説明 tr (トルコ語) \u0069 \u0130 小文字のi ->上に点が付いた大文字のI tr (トルコ語) \u0131 \u0049 点のない小文字のi ->大文字のI (すべて) \u00df \u0053 \u0053 小文字のシャープs -> SSの2文字 (すべて) Fahrvergnügen FAHRVERGNÜGEN - パラメータ:
- locale- このロケールの大文字小文字変換ルールを使用する
- 戻り値:
- 大文字に変換されたString。
- 導入されたバージョン:
- 1.1
- 関連項目:
- toUpperCase(),- toLowerCase(),- toLowerCase(Locale)
 
 - 
toUpperCasepublic String toUpperCase() デフォルト・ロケールのルールを使って、このString内のすべての文字を大文字に変換します。 このメソッドは、toUpperCase(Locale.getDefault())と同等です。注: このメソッドはロケールに依存するため、単独でロケールと解釈されるような文字列に使用すると、予期せぬ結果を引き起こすことがあります。 例として、プログラミング言語識別子、プロトコル・キー、HTMLタグがあります。 たとえば、トルコ語ロケールの "title".toUpperCase()は"T\u0130TLE"を返します。ここで、「\u0130」は上に点が付いたラテン大文字Iの文字です。 ロケールに依存しない文字列の正しい結果を取得するには、toUpperCase(Locale.ROOT)を使用します。- 戻り値:
- 大文字に変換されたString。
- 関連項目:
- toUpperCase(Locale)
 
 - 
trimpublic String trim() 値がこの文字列で、先頭と末尾のすべてのスペースが削除され、コード・ポイントが'U+0020'(空白文字)以下の文字でスペースが定義されている文字列を返します。この Stringオブジェクトが空の文字シーケンスを表しているか、このStringオブジェクトが表す文字シーケンスの最初と最後の文字が両方とも(上で定義したように)のスペースではないコードを持っている場合は、このStringオブジェクトへの参照が返されます。それ以外の場合、この文字列のすべての文字が空白(上で定義したように)であると、空の文字列を表す Stringオブジェクトが返されます。そうしない場合は、kを文字列の最初の文字のインデックスにし、そのコードが空白である(上で定義したように)ではなく、mをその文字列の最後の文字のインデックスにします(コードが空白(上で定義したように)ではない)。 インデックスkの文字で始まってインデックスmの文字で終わるこの文字列の部分文字列、つまり this.substring(k, m + 1)の部分文字列を表すStringオブジェクトが返されます。このメソッドを使用して、文字列の先頭と末尾から(上で定義したように)のスペースをトリミングできます。 - 戻り値:
- 値がこの文字列で、先頭と末尾のすべてのスペースが削除されているか、先頭または末尾のスペースがない場合は文字列。
 
 - 
strippublic String strip() 値がこの文字列であり、先頭と末尾のすべてのwhite spaceが削除されている文字列を返します。この Stringオブジェクトが空の文字列を表す場合、またはこの文字列のすべてのコード・ポイントがwhite spaceである場合は、空の文字列が返されます。それ以外の場合は、最初のコード・ポイントから始まる文字列の部分文字列を返します。最初のコード・ポイントでは、 white spaceではなく、white spaceではない最後のコード・ポイントを含めてください。このメソッドを使用して、文字列の先頭と末尾から white spaceを削除できます。- 戻り値:
- 値がこの文字列で、先頭と末尾の空白がすべて削除されている文字列
- 導入されたバージョン:
- 11
- 関連項目:
- Character.isWhitespace(int)
 
 - 
stripLeadingpublic String stripLeading() すべての先行white spaceが削除されて、値がこの文字列である文字列を返します。この Stringオブジェクトが空の文字列を表す場合、またはこの文字列のすべてのコード・ポイントがwhite spaceである場合は、空の文字列が返されます。それ以外の場合は、この文字列の最後のコード・ポイントまでの white spaceではない、最初のコード・ポイントから始まる部分文字列を返します。このメソッドを使用すると、文字列の先頭から white spaceをトリミングできます。- 戻り値:
- 値がこの文字列で、先頭に空白がすべて削除されている文字列
- 導入されたバージョン:
- 11
- 関連項目:
- Character.isWhitespace(int)
 
 - 
stripTrailingpublic String stripTrailing() 値がこの文字列で、すべての後続white spaceが削除されている文字列を返します。この Stringオブジェクトが空の文字列を表す場合、またはこの文字列のすべての文字がwhite spaceである場合は、空の文字列が返されます。それ以外の場合は、 white space以外の最後のコード・ポイントまでこの文字列の最初のコード・ポイントで始まる部分文字列を返します。このメソッドを使用すると、文字列の末尾から white spaceをトリミングできます。- 戻り値:
- 値がこの文字列で、後続の空白がすべて削除されている文字列
- 導入されたバージョン:
- 11
- 関連項目:
- Character.isWhitespace(int)
 
 - 
isBlankpublic boolean isBlank() 文字列が空であるか、white spaceコード・ポイントのみが含まれている場合はtrueを返し、falseを返します。- 戻り値:
- 文字列が空であるか、white spaceコード・ポイントのみが含まれている場合はtrue、そうでない場合はfalse
- 導入されたバージョン:
- 11
- 関連項目:
- Character.isWhitespace(int)
 
 - 
linespublic Stream<String> lines() この文字列から抽出された行のストリームを、行終了記号で区切りて返します。「終了文字」は次のいずれかです: 行のフィード文字 "\n"(U+000A)、改行文字"\r"(U+000D)、改行の直後に"\r\n"(U+000D U+000A)が続きます。lineは、行終了文字が続くゼロ文字以上のシーケンスであるか、または文字列の末尾に続く1文字以上の文字のシーケンスです。 線には、線の終端文字は含まれていません。 このメソッドから返されるストリームには、この文字列からの行が出現順に含まれます。 - APIの注:
- このlineの定義は、空の文字列には行がなく、文字列の終わりに行終了文字の後に空の行がないことを示しています。
- 実装上の注意:
- このメソッドを使用すると、要素を遅延して提供し、改行記号をより高速に検索することによって、split("\R")よりパフォーマンスが向上します。
- 戻り値:
- この文字列から抽出された行のストリーム
- 導入されたバージョン:
- 11
 
 - 
indentpublic String indent(int n) nの値に基づいてこの文字列の各行のインデントを調整し、行の終了文字を正規化します。この文字列は、 lines()を使用して概念的に複数の線に分割されています。 次に、各行は、下に説明するように調整され、後に行フィード"\n"(U+000A)が追加されます。 その後、結果の明細は連結されて返されます。n > 0の場合は、nスペース(U+0020)が各行の先頭に挿入されます。n < 0の場合、各行の先頭からnwhite space charactersまでが削除されます。 特定の行に十分な空白がない場合は、先頭のwhite space charactersすべてが削除されます。 各空白文字は1文字として扱われます。 特に、タブ文字"\t"(U+0009)は1文字とみなされ、展開されません。n == 0の場合、線は変わりません。 ただし、終了文字は正規化されたままです。- パラメータ:
- n- 追加または削除する先行- white space charactersの数
- 戻り値:
- 字下げ調整済および行の終わりが正規化された文字列
- 導入されたバージョン:
- 12
- 関連項目:
- lines(),- isBlank(),- Character.isWhitespace(int)
 
 - 
transformpublic <R> R transform(Function<? super String,? extends R> f) このメソッドは、関数をthis文字列に適用します。 この関数は単一の文字列引数を期待し、Rの結果を生成します。f()からスローされた例外はすべて、コール元に伝播されます。- 型パラメータ:
- R- 結果のクラス
- パラメータ:
- f- 適用への機能インタフェース
- 戻り値:
- この文字列に関数を適用した結果
- 導入されたバージョン:
- 12
- 関連項目:
- Function
 
 - 
toStringpublic String toString() このオブジェクト(すでに文字列である)自身が返されます。- 定義:
- toString、インタフェース:- CharSequence
- オーバーライド:
- toString、クラス:- Object
- 戻り値:
- 文字列自身。
 
 - 
charspublic IntStream chars() このシーケンスのchar値をゼロ拡張したintを含むストリームを返します。 サロゲート・コード・ポイントにマップするすべてのcharは、解釈されずに渡されます。- 定義:
- chars、インタフェース:- CharSequence
- 戻り値:
- このシーケンスのchar値のIntStream
- 導入されたバージョン:
- 9
 
 - 
codePointspublic IntStream codePoints() このシーケンスからコード・ポイント値のストリームを返します。 そのシーケンスで検出されるサロゲート・ペアがすべて、Character.toCodePointを使用した場合のように結合され、結果がストリームに渡されます。 他のすべてのコード(通常のBMP文字、ペアになっていないサロゲート、未定義のコード単位など)はint値にゼロ拡張されたあと、ストリームに渡されます。- 定義:
- インタフェースCharSequence内のcodePoints
- 戻り値:
- このシーケンスからのUnicodeコード・ポイントのIntStream
- 導入されたバージョン:
- 9
 
 - 
toCharArraypublic char[] toCharArray() この文字列を新しい文字配列に変換します。- 戻り値:
- 新しく割り当てられた文字配列。長さはこの文字列の長さと同じで、内容はこの文字列によって表される文字シーケンスが格納されるように初期化されている。
 
 - 
formatpublic static String format(String format, Object... args) 指定された書式の文字列と引数を使って、書式付き文字列を返します。常に使用されるロケールは、 Locale.getDefault(Locale.Category)によって返されたロケールで、FORMATカテゴリが指定されています。- パラメータ:
- format- 書式文字列
- args- 書式文字列の書式指示子により参照される引数。 書式指示子よりも引数が多い場合、余分な引数は無視される。 引数の数は変動し、ゼロの場合もある。 引数の最大数は、Java™仮想マシン仕様で定義されているJava配列の最大次元により制限される。 引数が- nullの場合、動作は変換に応じて異なる。
- 戻り値:
- フォーマットされた文字列
- 例外:
- IllegalFormatException- 書式文字列が、不正な構文、所定の引数と互換性がない書式指示子、書式文字列に指定された不適切な引数、またはほかの不正な条件を含む場合。 考えられるすべての書式エラーの仕様については、フォーマッタ・クラス仕様の詳細セクションを参照。
- 導入されたバージョン:
- 1.5
- 関連項目:
- Formatter
 
 - 
formatpublic static String format(Locale l, String format, Object... args) 指定されたロケール、書式文字列、および引数を使って、フォーマットされた文字列を返します。- パラメータ:
- l- 書式設定時に適用するlocale。- lが- nullの場合、ローカリゼーションは適用されない。
- format- 書式文字列
- args- 書式文字列の書式指示子により参照される引数。 書式指示子よりも引数が多い場合、余分な引数は無視される。 引数の数は変動し、ゼロの場合もある。 引数の最大数は、Java™仮想マシン仕様で定義されているJava配列の最大次元により制限される。 引数が- nullの場合、動作は変換に応じて異なる。
- 戻り値:
- フォーマットされた文字列
- 例外:
- IllegalFormatException- 書式文字列が、不正な構文、所定の引数と互換性がない書式指示子、書式文字列に指定された不適切な引数、またはほかの不正な条件を含む場合。 考えられるすべての書式エラーの仕様については、フォーマッタ・クラス仕様の詳細セクションを参照
- 導入されたバージョン:
- 1.5
- 関連項目:
- Formatter
 
 - 
valueOfpublic static String valueOf(Object obj) Object引数の文字列表現を返します。- パラメータ:
- obj-- Object。
- 戻り値:
- 引数がnullの場合は"null"に等しい文字列。それ以外の場合はobj.toString()の値が返される。
- 関連項目:
- Object.toString()
 
 - 
valueOfpublic static String valueOf(char[] data) char配列引数の文字列表現を返します。 文字配列の内容がコピーされます。コピー後にその文字配列が変更されても、返される文字列には影響しません。- パラメータ:
- data- 文字配列。
- 戻り値:
- 文字配列の文字が格納されているString。
 
 - 
valueOfpublic static String valueOf(char[] data, int offset, int count) char配列引数の特定の部分配列の文字列表現を返します。offset引数は部分配列の最初の文字のインデックスを表します。count引数は部分配列の長さを表します。 部分配列の内容がコピーされます。コピー後に文字配列が変更されても、返される文字列には影響しません。- パラメータ:
- data- 文字配列。
- offset- 部分配列の初期オフセット。
- count- 部分配列の長さ。
- 戻り値:
- 文字配列内の指定された部分配列の文字が格納されているString。
- 例外:
- IndexOutOfBoundsException-- offsetが負の値の場合、- countが負の値の場合、あるいは- offset+countが- data.lengthよりも大きい場合。
 
 - 
copyValueOfpublic static String copyValueOf(char[] data, int offset, int count) - パラメータ:
- data- 文字配列。
- offset- 部分配列の初期オフセット。
- count- 部分配列の長さ。
- 戻り値:
- 文字配列内の指定された部分配列の文字が格納されているString。
- 例外:
- IndexOutOfBoundsException-- offsetが負の値の場合、- countが負の値の場合、あるいは- offset+countが- data.lengthよりも大きい場合。
 
 - 
copyValueOfpublic static String copyValueOf(char[] data) valueOf(char[])と同等です。- パラメータ:
- data- 文字配列。
- 戻り値:
- 文字配列の文字が格納されているString。
 
 - 
valueOfpublic static String valueOf(boolean b) boolean引数の文字列表現を返します。- パラメータ:
- b-- boolean。
- 戻り値:
- 引数がtrueの場合は"true"に等しい文字列が返され、そうでない場合は"false"に等しい文字列が返される。
 
 - 
valueOfpublic static String valueOf(char c) char引数の文字列表現を返します。- パラメータ:
- c-- char。
- 戻り値:
- 1つの文字として引数cが格納された、長さ1の文字列。
 
 - 
valueOfpublic static String valueOf(int i) int引数の文字列表現を返します。この表現は1つの引数を持つ Integer.toStringメソッドによって返されるものとまったく同じです。- パラメータ:
- i-- int。
- 戻り値:
- int引数の文字列表現。
- 関連項目:
- Integer.toString(int, int)
 
 - 
valueOfpublic static String valueOf(long l) long引数の文字列表現を返します。この表現は1つの引数を持つ Long.toStringメソッドによって返されるものとまったく同じです。- パラメータ:
- l-- long。
- 戻り値:
- long引数の文字列表現。
- 関連項目:
- Long.toString(long)
 
 - 
valueOfpublic static String valueOf(float f) float引数の文字列表現を返します。この表現は1つの引数を持つ Float.toStringメソッドによって返されるものとまったく同じです。- パラメータ:
- f-- float。
- 戻り値:
- float引数の文字列表現。
- 関連項目:
- Float.toString(float)
 
 - 
valueOfpublic static String valueOf(double d) double引数の文字列表現を返します。この表現は1つの引数を持つ Double.toStringメソッドによって返されるものとまったく同じです。- パラメータ:
- d-- double。
- 戻り値:
- double引数の文字列表現。
- 関連項目:
- Double.toString(double)
 
 - 
internpublic String intern() 文字列オブジェクトの正準表現を返します。文字列のプールは、初期状態では空で、クラス Stringによってプライベートに保持されます。internメソッドが呼び出されたときに、 equals(Object)メソッドによってこのStringオブジェクトに等しいと判定される文字列がプールにすでにあった場合は、プール内の該当する文字列が返されます。 そうでない場合は、このStringオブジェクトがプールに追加され、このStringオブジェクトへの参照が返されます。したがって、任意の2つの文字列 sとtについて、s.intern() == t.intern()がtrueになるのは、s.equals(t)がtrueの場合だけです。すべてのリテラル文字列および文字列値定数式が保持されます。 文字列リテラルは、『Java™言語仕様』のセクション3.10.5で定義されています。 - 戻り値:
- この文字列と同じ内容だが、一意の文字列のプールからのものであることが保証されている文字列。
- Java™言語仕様:
- 3.10.5 文字列リテラル
 
 - 
repeatpublic String repeat(int count) この文字列を連結した値がcount回繰り返される文字列を返します。この文字列が空であるか、件数がゼロの場合は、空の文字列が返されます。 - パラメータ:
- count- 繰返し回数
- 戻り値:
- この文字列で構成された文字列は、この文字列が空であるかカウントがゼロの場合は、count回繰り返されるか空の文字列です。
- 例外:
- IllegalArgumentException-- countが負の場合。
- 導入されたバージョン:
- 11
 
 - 
describeConstablepublic Optional<String> describeConstable() このインスタンス自体の名目記述子を含むOptionalを返します。- 定義:
- インタフェースConstable内のdescribeConstable
- 戻り値:
- Stringインスタンスを説明するOptional
- 導入されたバージョン:
- 12
 
 - 
resolveConstantDescpublic String resolveConstantDesc(MethodHandles.Lookup lookup) このインスタンスをConstantDescとして解決します。その結果がインスタンス自体です。- 定義:
- インタフェースConstantDesc内のresolveConstantDesc
- パラメータ:
- lookup- ignored
- 戻り値:
- Stringインスタンス
- 導入されたバージョン:
- 12
 
 
- 
 
-