JavaTM 2
Platform
Std. Ed. v1.4.0

java.lang
クラス String

java.lang.Object
  |
  +--java.lang.String
すべての実装インタフェース:
CharSequence, Comparable, Serializable

public final class String
extends Object
implements Serializable, Comparable, CharSequence

String クラスは文字列を表します。Java プログラム内の "abc" などのリテラル文字列はすべて、このクラスのインスタンスとして実行されます。

文字列は定数です。この値を作成したあとに変更はできません。StringBuffer は可変文字列をサポートします。文字列オブジェクトは不変であるため、共用することができます。たとえば

     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 クラスには、文字列のそれぞれの文字をテストするメソッドや、文字列の比較、文字列の検索、部分文字列の抽出、および文字をすべて大文字または小文字に変換した文字列のコピー作成などを行うメソッドがあります。ケースマッピングは、Unicode Consortium の Unicode 3.0 仕様に指定された情報に大きく依存しています。ケースマッピングに関しては、特に仕様の UnicodeData.txt および SpecialCasing.txt に示されています。

Java 言語は、文字列連結演算子 ( + )、およびその他のオブジェクトから文字列への変換に対する特別なサポートを提供します。文字列連結は StringBuffer クラスとその append メソッドを使って実装されています。文字列変換は Object によって定義された toString メソッドを使って実装され、Java のクラスすべてによって継承されます。文字列連結および文字列変換についての詳細は、Gosling、Joy、および Steele の「Java 言語仕様」を参照してください。

導入されたバージョン:
JDK1.0
関連項目:
Object.toString(), StringBuffer, StringBuffer.append(boolean), StringBuffer.append(char), StringBuffer.append(char[]), StringBuffer.append(char[], int, int), StringBuffer.append(double), StringBuffer.append(float), StringBuffer.append(int), StringBuffer.append(long), StringBuffer.append(java.lang.Object), StringBuffer.append(java.lang.String), Charset, 直列化された形式

フィールドの概要
static Comparator CASE_INSENSITIVE_ORDER
          compareToIgnoreCase の場合と同じように String オブジェクトを順序付ける Comparator です。
 
コンストラクタの概要
String()
          新しく生成された String オブジェクトを初期化して、空の文字シーケンスを表すようにします。
String(byte[] bytes)
          プラットフォームのデフォルト文字セットを使用して、指定されたバイト配列を復号化することによって、新しい String を構築します。
String(byte[] ascii, int hibyte)
          推奨されていません。 このメソッドでは、バイトから文字への変換が正しく行われません。JDK 1.1 以降では、バイトから文字への変換には、引数として文字セットの名前をとる String コンストラクタ、またはプラットフォームのデフォルト文字セットを使用する String コンストラクタの使用が推奨されます。
String(byte[] bytes, int offset, int length)
          プラットフォームのデフォルト文字セットを使用して、指定されたバイト部分配列を復号化することによって、新しい String を構築します。
String(byte[] ascii, int hibyte, int offset, int count)
          推奨されていません。 このメソッドでは、バイトから文字への変換が正しく行われません。JDK 1.1 以降では、バイトから文字への変換には、引数として文字セットの名前をとる String コンストラクタ、またはプラットフォームのデフォルト文字セットを使用する String コンストラクタの使用が推奨されます。
String(byte[] bytes, int offset, int length, String charsetName)
          指定された文字セットを使用して、指定されたバイト部分配列を復号化することによって、新しい String を構築します。
String(byte[] bytes, String charsetName)
          指定された文字セットを使用して、指定されたバイト配列を復号化することによって、新しい String を構築します。
String(char[] value)
          新しい String を割り当てて、これが文字配列引数に現在含まれている文字シーケンスを表すようにします。
String(char[] value, int offset, int count)
          文字配列引数の部分配列からなる文字を含む新しい String を割り当てます。
String(String original)
          新しく生成された String オブジェクトを初期化して、引数と同じ文字シーケンスを表すようにします。
String(StringBuffer buffer)
          StringBuffer 型の引数に現在含まれている文字列を持つ新しい文字列を構築します。
 
メソッドの概要
 char charAt(int index)
          指定されたインデックス位置にある文字を返します。
 int compareTo(Object o)
          この String をほかの Object と比較します。
 int compareTo(String anotherString)
          2 つの文字列を辞書式に比較します。
 int compareToIgnoreCase(String str)
          大文字小文字の区別なしで、2 つの文字列を辞書式に比較します。
 String concat(String str)
          指定された文字列をこの文字列の最後に連結します。
 boolean contentEquals(StringBuffer sb)
          この String が、指定された StringBuffer と同じ文字シーケンスを表す場合にだけ、true が返されます。
static String copyValueOf(char[] data)
          指定された配列内の文字シーケンスを表す String を返します。
static String copyValueOf(char[] data, int offset, int count)
          指定された配列内の文字シーケンスを表す String を返します。
 boolean endsWith(String suffix)
          この文字列が、指定された接尾辞で終るかどうかを判定します。
 boolean equals(Object anObject)
          この文字列と指定されたオブジェクトを比較します。
 boolean equalsIgnoreCase(String anotherString)
          この String とほかの String を比較します。
 byte[] getBytes()
          プラットフォームのデフォルト文字セットを使用してこの String をバイトシーケンスに符号化し、結果を新規バイト配列に格納します。
 void getBytes(int srcBegin, int srcEnd, byte[] dst, int dstBegin)
          推奨されていません。 このメソッドでは、文字からバイトへの変換が正しく行われません。JDK 1.1 では、文字からバイトへの変換には、プラットフォームのデフォルト文字セットを使用する getBytes() メソッドの使用が推奨されます。
 byte[] getBytes(String charsetName)
          指定された文字セットを使用してこの String をバイトシーケンスに符号化し、結果を新規バイト配列に格納します。
 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
          この文字列から、コピー先の文字配列に文字をコピーします。
 int hashCode()
          この文字列のハッシュコードを返します。
 int indexOf(int ch)
          この文字列内で、指定された文字が最初に出現する位置のインデックスを返します。
 int indexOf(int ch, int fromIndex)
          この文字列内で、指定されたインデックスから検索を開始し、指定された文字が最初に出現する位置のインデックスを返します。
 int indexOf(String str)
          この文字列内で、指定された部分文字列が最初に出現する位置のインデックスを返します。
 int indexOf(String str, int fromIndex)
          指定されたインデックス以降で、指定された部分文字列がこの文字列内で最初に出現する位置のインデックスを返します。
 String intern()
          文字列オブジェクトの正準表現を返します。
 int lastIndexOf(int ch)
          この文字列内で、指定された文字が最後に出現する位置のインデックスを返します。
 int lastIndexOf(int ch, int fromIndex)
          この文字列内で、指定された文字が最後に出現する位置のインデックスを返します (検索は指定されたインデックスから開始され、先頭方向に行われる)。
 int lastIndexOf(String str)
          この文字列内で、指定された部分文字列が一番右に出現する位置のインデックスを返します。
 int lastIndexOf(String str, int fromIndex)
          この文字列内で、指定された部分文字列が最後に出現する位置のインデックスを返します (検索は指定されたインデックスから開始され、先頭方向に行われる)。
 int length()
          この文字列の長さを返します。
 boolean matches(String regex)
          この文字列が、指定された正規表現と一致するかどうかを判定します。
 boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)
          2 つの文字列領域が等しいかどうかを判定します。
 boolean regionMatches(int toffset, String other, int ooffset, int len)
          2 つの文字列領域が等しいかどうかを判定します。
 String replace(char oldChar, char newChar)
          この文字列内にあるすべての oldCharnewChar に置換した結果生成される、新しい文字列を返します。
 String replaceAll(String regex, String replacement)
          指定された正規表現に一致する、この文字列の各部分文字列に対し、指定された置換を実行します。
 String replaceFirst(String regex, String replacement)
          指定された正規表現に一致する、この文字列の最初の部分文字列に対し、指定された置換を実行します。
 String[] split(String regex)
          この文字列を、指定された正規表現に一致する位置で分割します。
 String[] split(String regex, int limit)
          この文字列を、指定された正規表現に一致する位置で分割します。
 boolean startsWith(String prefix)
          この文字列が、指定された接頭辞で始まるかどうかを判定します。
 boolean startsWith(String prefix, int toffset)
          この文字列の指定されたインデックス以降の部分文字列が、指定された接頭辞で始まるかどうかを判定します。
 CharSequence subSequence(int beginIndex, int endIndex)
          このシーケンスのサブシーケンスである新規文字シーケンスを返します。
 String substring(int beginIndex)
          この文字列の部分文字列である新しい文字列を返します。
 String substring(int beginIndex, int endIndex)
          この文字列の部分文字列である新しい文字列を返します。
 char[] toCharArray()
          この文字列を新しい文字配列に変換します。
 String toLowerCase()
          デフォルトロケールの規則を使って、この String 内のすべての文字を小文字に変換します。
 String toLowerCase(Locale locale)
          指定された Locale の規則を使用して、この String 内のすべての文字列を小文字に変換します。
 String toString()
          このオブジェクト (すでに文字列である) 自身が返されます。
 String toUpperCase()
          デフォルトロケールの規則を使って、この String 内のすべての文字を大文字に変換します。
 String toUpperCase(Locale locale)
          指定された Locale の規則を使用して、この String 内のすべての文字列を大文字に変換します。
 String trim()
          文字列のコピーを返します。
static String valueOf(boolean b)
          boolean 引数の文字列表現を返します。
static String valueOf(char c)
          char 引数の文字列表現を返します。
static String valueOf(char[] data)
          char 配列引数の文字列表現を返します。
static String valueOf(char[] data, int offset, int count)
          char 配列引数の特定の部分配列の文字列表現を返します。
static String valueOf(double d)
          double 引数の文字列表現を返します。
static String valueOf(float f)
          float 引数の文字列表現を返します。
static String valueOf(int i)
          int 引数の文字列表現を返します。
static String valueOf(long l)
          long 引数の文字列表現を返します。
static String valueOf(Object obj)
          Object 引数の文字列表現を返します。
 
クラス java.lang.Object から継承したメソッド
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

CASE_INSENSITIVE_ORDER

public static final Comparator CASE_INSENSITIVE_ORDER
compareToIgnoreCase の場合と同じように String オブジェクトを順序付ける Comparator です。このコンパレータは直列化可能です。

この Comparator はロケールを考慮しないので、一部のロケールでは、正しい順序に並べられないことがあります。java.text パッケージは、ロケールに依存する並べ替えを行うために Collator を提供しています。

導入されたバージョン:
1.2
関連項目:
Collator.compare(String, String)
コンストラクタの詳細

String

public String()
新しく生成された String オブジェクトを初期化して、空の文字シーケンスを表すようにします。


String

public String(String original)
新しく生成された String オブジェクトを初期化して、引数と同じ文字シーケンスを表すようにします。つまり、新しく作成された文字列は引数文字列のコピーになります。

パラメータ:
original - String

String

public String(char[] value)
新しい String を割り当てて、これが文字配列引数に現在含まれている文字シーケンスを表すようにします。文字配列の内容がコピーされます。コピー後に文字配列が変更されても、新しく作成された文字列には影響しません。

パラメータ:
value - 文字列の初期値
例外:
NullPointerException - valuenull の場合

String

public String(char[] value,
              int offset,
              int count)
文字配列引数の部分配列からなる文字を含む新しい String を割り当てます。引数 offset は部分配列の先頭の文字のインデックスであり、引数 count は部分配列の長さを指定します。部分配列の内容がコピーされます。コピー後に文字配列が変更されても、新しく作成された文字列には影響しません。

パラメータ:
value - 文字列のソースである配列
offset - 初期オフセット
count - 長さ
例外:
IndexOutOfBoundsException - offset および count 引数インデックスによる文字列が value 配列の範囲外となる場合
NullPointerException - valuenull の場合

String

public String(byte[] ascii,
              int hibyte,
              int offset,
              int count)
推奨されていません。 このメソッドでは、バイトから文字への変換が正しく行われません。JDK 1.1 以降では、バイトから文字への変換には、引数として文字セットの名前をとる String コンストラクタ、またはプラットフォームのデフォルト文字セットを使用する String コンストラクタの使用が推奨されます。

8 ビット整数値配列の部分配列によって構築される新しい String を割り当てます。

引数 offset は部分配列の先頭のバイトのインデックスであり、引数 offset は部分配列の長さを指定します。

部分配列の各 byte は上記メソッドに指定される char に変換されます。

パラメータ:
ascii - 文字列に変換されるバイト
hibyte - 16 ビットの各 Unicode 文字列の上位 8 ビット
offset - 初期オフセット
count - 長さ
例外:
IndexOutOfBoundsException - 引数 offset または count が無効な場合
NullPointerException - asciinull の場合
関連項目:
String(byte[], int), String(byte[], int, int, java.lang.String), String(byte[], int, int), String(byte[], java.lang.String), String(byte[])

String

public String(byte[] ascii,
              int hibyte)
推奨されていません。 このメソッドでは、バイトから文字への変換が正しく行われません。JDK 1.1 以降では、バイトから文字への変換には、引数として文字セットの名前をとる String コンストラクタ、またはプラットフォームのデフォルト文字セットを使用する String コンストラクタの使用が推奨されます。

8 ビット整数値の配列からなる文字を持つ新しい String を割り当てます。その結果として生成される文字列のそれぞれの文字 c は、以下のようなバイト配列内の対応する要素 b から構成されます。

     c == (char)(((hibyte & 0xff) << 8)
                         | (b & 0xff))
 

パラメータ:
ascii - 文字列に変換されるバイト
hibyte - 16 ビットの各 Unicode 文字列の上位 8 ビット
例外:
NullPointerException - asciinull の場合
関連項目:
String(byte[], int, int, java.lang.String), String(byte[], int, int), String(byte[], java.lang.String), String(byte[])

String

public String(byte[] bytes,
              int offset,
              int length,
              String charsetName)
       throws UnsupportedEncodingException
指定された文字セットを使用して、指定されたバイト部分配列を復号化することによって、新しい String を構築します。新しい String の長さは文字セットによって変化するため、部分配列長と一致しないことがあります。

指定された文字セットで指定されたバイトが無効な場合、このコンストラクタの動作は指定されません。復号化処理をより強力に制御する必要がある場合、CharsetDecoder クラスを使用する必要があります。

パラメータ:
bytes - 文字列に復号化されるバイト
offset - 復号化される先頭バイトのインデックス
length - 復号化するバイト数
charsetName - サポートする charset の名前
例外:
UnsupportedEncodingException - 指定された文字セットがサポートされていない場合
IndexOutOfBoundsException - offset および length 引数インデックスによる文字列が value 配列の範囲外となる場合
NullPointerException - charsetNamenull の場合
導入されたバージョン:
JDK1.1

String

public String(byte[] bytes,
              String charsetName)
       throws UnsupportedEncodingException
指定された文字セットを使用して、指定されたバイト配列を復号化することによって、新しい String を構築します。新しい String の長さは文字セットによって変化するため、バイト配列長と一致しないことがあります。

指定された文字セットで指定されたバイトが無効な場合、このコンストラクタの動作は指定されません。復号化処理をより強力に制御する必要がある場合、CharsetDecoder クラスを使用する必要があります。

パラメータ:
bytes - 文字列に復号化されるバイト
charsetName - サポートする charset の名前
例外:
UnsupportedEncodingException - 指定された文字セットがサポートされていない場合
NullPointerException - charsetNamenull の場合
導入されたバージョン:
JDK1.1

String

public String(byte[] bytes,
              int offset,
              int length)
プラットフォームのデフォルト文字セットを使用して、指定されたバイト部分配列を復号化することによって、新しい String を構築します。新しい String の長さは文字セットによって変化するため、部分配列長と一致しないことがあります。

デフォルト文字セットで指定されたバイトが無効な場合、このコンストラクタの動作は指定されません。復号化処理をより強力に制御する必要がある場合、CharsetDecoder クラスを使用する必要があります。

パラメータ:
bytes - 文字列に復号化されるバイト
offset - 復号化される先頭バイトのインデックス
length - 復号化するバイト数
導入されたバージョン:
JDK1.1

String

public String(byte[] bytes)
プラットフォームのデフォルト文字セットを使用して、指定されたバイト配列を復号化することによって、新しい String を構築します。新しい String の長さは文字セットによって変化するため、バイト配列長と一致しないことがあります。

デフォルト文字セットで指定されたバイトが無効な場合、このコンストラクタの動作は指定されません。復号化処理をより強力に制御する必要がある場合、CharsetDecoder クラスを使用する必要があります。

パラメータ:
bytes - 文字列に復号化されるバイト
導入されたバージョン:
JDK1.1

String

public String(StringBuffer buffer)
StringBuffer 型の引数に現在含まれている文字列を持つ新しい文字列を構築します。文字列バッファの内容がコピーされます。コピー後に文字列バッファが変更されても、新しく作成された文字列には影響しません。

パラメータ:
buffer - StringBuffer
例外:
NullPointerException - buffernull の場合
メソッドの詳細

length

public int length()
この文字列の長さを返します。長さは文字列内の 16 ビット Unicode 文字の数に等しくなります。

定義:
インタフェース CharSequence 内の length
戻り値:
このオブジェクトによって表される文字シーケンスの長さ

charAt

public char charAt(int index)
指定されたインデックス位置にある文字を返します。インデックスは、0length() - 1 の範囲になります。配列のインデックス付けの場合と同じように、文字列の最初の文字のインデックスは 0、次の文字のインデックスは 1 と続きます。

定義:
インタフェース CharSequence 内の charAt
パラメータ:
index - 文字のインデックス
戻り値:
文字列内の指定されたインデックス位置にある文字。最初の文字のインデックスが 0 になる
例外:
IndexOutOfBoundsException - index 引数が負の値、または文字列の長さと同じかこれより大きい値の場合

getChars

public 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 が負の値の場合
  • srcBeginsrcEnd より大きい場合
  • srcEnd がこの文字列の長さより大きい場合
  • dstBegin が負の値の場合
  • dstBegin+(srcEnd-srcBegin) の値が dst.length
より大きい場合
NullPointerException - dstnull の場合

getBytes

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 が負の値の場合
  • srcBeginsrcEnd より大きい場合
  • srcEnd がこの String の長さより大きい場合
  • dstBegin が負の値の場合
  • dstBegin+(srcEnd-srcBegin) の値が dst.length
より大きい場合
NullPointerException - dstnull の場合

getBytes

public byte[] getBytes(String charsetName)
                throws UnsupportedEncodingException
指定された文字セットを使用してこの String をバイトシーケンスに符号化し、結果を新規バイト配列に格納します。

指定された文字セットでこの文字列を符号化できない場合、このメソッドの動作は指定されません。符号化処理をより強力に制御する必要がある場合、CharsetEncoder クラスを使用する必要があります。

パラメータ:
charsetName - サポートする charset の名前
戻り値:
結果のバイト配列
例外:
UnsupportedEncodingException - 指定された文字セットがサポートされていない場合
導入されたバージョン:
JDK1.1

getBytes

public byte[] getBytes()
プラットフォームのデフォルト文字セットを使用してこの String をバイトシーケンスに符号化し、結果を新規バイト配列に格納します。

デフォルト文字セットでこの文字列を符号化できない場合、このメソッドの動作は指定されません。符号化処理をより強力に制御する必要がある場合、CharsetEncoder クラスを使用する必要があります。

戻り値:
結果のバイト配列
導入されたバージョン:
JDK1.1

equals

public boolean equals(Object anObject)
この文字列と指定されたオブジェクトを比較します。引数が null でなく、このオブジェクトと同じ文字シーケンスを表す String オブジェクトである場合にだけ、結果は true になります。

オーバーライド:
クラス Object 内の equals
パラメータ:
anObject - この String と比較されるオブジェクト
戻り値:
String が等しい場合は true、そうでない場合は false
関連項目:
compareTo(java.lang.String), equalsIgnoreCase(java.lang.String)

contentEquals

public boolean contentEquals(StringBuffer sb)
この String が、指定された StringBuffer と同じ文字シーケンスを表す場合にだけ、true が返されます。

パラメータ:
sb - 比較対象の StringBuffer
戻り値:
この String が、指定された StringBuffer と同じ文字シーケンスを表す場合にのみ、true が返される
例外:
NullPointerException - sbnull の場合
導入されたバージョン:
1.4

equalsIgnoreCase

public boolean equalsIgnoreCase(String anotherString)
この String とほかの String を比較します。大文字小文字は区別されません。長さが同じで、2 つの文字列内の対応する文字が大文字小文字の区別なしで等しい場合、2 つの文字列は大文字小文字の区別なしで等しいと見なされます。

次のどれかに該当する場合に、c1c2 という 2 つの文字は大文字小文字の区別なしで等しいと見なされます。

パラメータ:
anotherString - この String と比較される String
戻り値:
引数が null でなく String が等しい場合は true、そうでない場合は false
関連項目:
equals(Object), Character.toLowerCase(char), Character.toUpperCase(char)

compareTo

public int compareTo(String anotherString)
2 つの文字列を辞書式に比較します。比較は文字列内のそれぞれの文字の Unicode 値に基づいて行われます。この String オブジェクトによって表される文字シーケンスが、引数文字列によって表される文字シーケンスと辞書式に比較されます。この String オブジェクトが辞書式に引数文字列より前にある場合は、結果は負の整数になります。この String オブジェクトが辞書式に引数文字列の後ろにある場合、結果は正の整数になります。文字列が等しい場合、結果は 0 になります。equals(Object) メソッドが true を返すとき、compareTo0 を返します。

辞書式の順序の定義を示します。2 つの文字列が異なる場合、両方の文字列に対して有効なインデックスに位置する文字が異なるか、2 つの文字列の長さが異なるか、あるいはその両方が該当します。1 つ以上のインデックスの位置にある文字が異なる場合は、このうちのもっとも小さいインデックスを k とすると、< 演算子を使用して「より小さい」値と判定される、位置 k にある文字を持つ文字列が、もう一方の文字列より辞書式に前になります。この場合、compareTo は 2 つの文字列で位置 k にある 2 つの文字の値の差を返します。これは次の式で表される値になります。

 this.charAt(k)-anotherString.charAt(k)
 
有効なすべてのインデックス位置における文字が同じ場合は、短いほうの文字列が辞書式に前になります。この場合は、compareTo は文字列の長さの差を返します。これは次の式で表される値になります。
 this.length()-anotherString.length()
 

パラメータ:
anotherString - 比較対象の String
戻り値:
引数文字列がこの文字列に等しい場合は、値 0。この文字列が文字列引数より辞書式に小さい場合は、0 より小さい値。この文字列が文字列引数より辞書式に大きい場合は、0 より大きい値
例外:
NullPointerException - anotherStringnull の場合

compareTo

public int compareTo(Object o)
この String をほかの Object と比較します。Object が String の場合、この関数は compareTo(String) と同じ動作になります。そうでない場合は ClassCastException をスローします (String の比較は String 同士でしか行えないため)。

定義:
インタフェース Comparable 内の compareTo
パラメータ:
o - 比較対象の Object
戻り値:
引数文字列がこの文字列と辞書式に等しい場合は、値 0。引数がこの文字列より辞書式に大きい文字列である場合は、0 より小さい値。引数がこの文字列より辞書式に小さい場合は、0 より大きい値
例外:
ClassCastException - 引数が String ではない場合
導入されたバージョン:
1.2
関連項目:
Comparable

compareToIgnoreCase

public int compareToIgnoreCase(String str)
大文字小文字の区別なしで、2 つの文字列を辞書式に比較します。このメソッドは、this.toUpperCase().toLowerCase().compareTo(str.toUpperCase().toLowerCase()) の符号を持つ整数を返します。

このメソッドはロケールを考慮しないので、一部のロケールでは、正しい順序に並べられないことがあります。java.text パッケージは、ロケールに依存する並べ替えを行うために「コレータ」を提供しています。

パラメータ:
str - 比較対象の String
戻り値:
大文字小文字の区別なしで、指定された String がこの String より大きい場合は負の整数、同じ場合は 0、小さい場合は正の整数
導入されたバージョン:
1.2
関連項目:
Collator.compare(String, String)

regionMatches

public boolean regionMatches(int toffset,
                             String other,
                             int ooffset,
                             int len)
2 つの文字列領域が等しいかどうかを判定します。

この String オブジェクトの部分文字列が、引数 other の部分文字列と比較されます。これらの部分文字列が同じ文字シーケンスを表す場合、結果は true になります。この比較対象 String オブジェクトの部分文字列は、インデックス toffset から始まり、長さは len です。比較の対象となる other の部分文字列はインデックス ooffset から始まり、長さは len です。以下のどれかに該当する場合にだけ、結果は false になります。

パラメータ:
toffset - この文字列内の部分領域の開始オフセット
other - 文字列引数
ooffset - 文字列引数内の部分領域の開始オフセット
len - 比較対象の文字数
戻り値:
この文字列の指定された部分領域が文字列引数の指定された部分領域と完全に一致する場合は true、そうでない場合は false
例外:
NullPointerException - othernull の場合

regionMatches

public 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 になります。

パラメータ:
ignoreCase - true の場合、文字の比較の際に大文字小文字は区別されない
toffset - この文字列内の部分領域の開始オフセット
other - 文字列引数
ooffset - 文字列引数内の部分領域の開始オフセット
len - 比較対象の文字数
戻り値:
この文字列の指定された部分領域が文字列引数の指定された部分領域と一致する場合は true、そうでない場合は false。一致した場合に、大文字小文字が区別されているかどうかは引数 ignoreCase によって決まる

startsWith

public boolean startsWith(String prefix,
                          int toffset)
この文字列の指定されたインデックス以降の部分文字列が、指定された接頭辞で始まるかどうかを判定します。

パラメータ:
prefix - 接頭辞
toffset - 文字列の比較を開始する位置
戻り値:
引数によって表される文字列が、インデックス toffset で始まるこのオブジェクトの部分文字列の接頭辞である場合は true、そうでない場合は falsetoffset が負の値の場合、あるいは String オブジェクトの長さより大きい場合、結果は false。そうでない場合は、結果は
          this.subString(toffset).startsWith(prefix)
          
の式の結果と同じ
例外:
NullPointerException - prefixnull の場合

startsWith

public boolean startsWith(String prefix)
この文字列が、指定された接頭辞で始まるかどうかを判定します。

パラメータ:
prefix - 接頭辞
戻り値:
引数によって表される文字列が、この文字列によって表される文字列の接頭辞である場合は true、そうでない場合は false。引数が空の文字列の場合や、equals(Object) メソッドによる判定においてこの String オブジェクトに等しい場合にも true が返される
例外:
NullPointerException - prefixnull の場合
導入されたバージョン:
1. 0

endsWith

public boolean endsWith(String suffix)
この文字列が、指定された接尾辞で終るかどうかを判定します。

パラメータ:
suffix - 接尾辞
戻り値:
引数によって表される文字シーケンスが、このオブジェクトによって表される文字シーケンスの接尾辞である場合は true、そうでない場合は false。引数が空の文字列の場合や、String オブジェクトが equals(Object) メソッドによる判定においてこの String オブジェクトに等しい場合にも、結果は true になる
例外:
NullPointerException - suffixnull の場合

hashCode

public int hashCode()
この文字列のハッシュコードを返します。String のハッシュコードは、次の方法で計算します。
 s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
 
int 算術を使います。s[i] は文字列の i 番目の文字、n は文字列の長さ、^ はべき乗を示します。空の文字列のハッシュ値は 0 です。

オーバーライド:
クラス Object 内の hashCode
戻り値:
このオブジェクトのハッシュコード値
関連項目:
Object.equals(java.lang.Object), Hashtable

indexOf

public int indexOf(int ch)
この文字列内で、指定された文字が最初に出現する位置のインデックスを返します。値 ch を持つ文字がこの String オブジェクトによって表される文字シーケンス内にある場合、最初に出現する位置のインデックスが返されます。つまり、次の式が true となるような最小の k が返されます。
 this.charAt(k) == ch
 
該当する文字がこの文字列内にない場合は、-1 が返されます。

パラメータ:
ch - 文字
戻り値:
このオブジェクトによって表される文字シーケンス内で、指定された文字が最初に出現する位置のインデックス。文字がない場合は -1

indexOf

public int indexOf(int ch,
                   int fromIndex)
この文字列内で、指定されたインデックスから検索を開始し、指定された文字が最初に出現する位置のインデックスを返します。

ch を持つ文字が、この String オブジェクトによって表される文字シーケンスの fromIndex より大きいか同じインデックス位置にある場合、該当する最初のインデックスが返されます。つまり、次の式が true となるような最小の k が返されます。

 (this.charAt(k) == ch) && (k >= fromIndex)
 
該当する文字がこの文字列内または位置 fromIndex 以降にない場合は -1 が返されます。

fromIndex の値に対して制約はありません。負の値の場合は、0 の場合と同じ結果になり、この文字列全体が検索されます。この文字列の長さより大きい場合は、この文字列の長さに等しい場合と同じ結果になり、-1 が返されます。

パラメータ:
ch - 文字
fromIndex - 検索開始位置のインデックス
戻り値:
このオブジェクトによって表される文字列で、指定された文字が fromIndex と同じかこれより大きいインデックス位置にある場合は、最初に出現した位置のインデックス。文字がない場合は -1

lastIndexOf

public int lastIndexOf(int ch)
この文字列内で、指定された文字が最後に出現する位置のインデックスを返します。つまり、返されるインデックスは、次の式が true となるような最大の k です。
 this.charAt(k) == ch
 
String の検索は最後の文字から開始され、先頭方向に行われます。

パラメータ:
ch - 文字
戻り値:
このオブジェクトによって表される文字シーケンス内で、指定された文字が最後に出現する位置のインデックス。文字がない場合は -1

lastIndexOf

public int lastIndexOf(int ch,
                       int fromIndex)
この文字列内で、指定された文字が最後に出現する位置のインデックスを返します (検索は指定されたインデックスから開始され、先頭方向に行われる)。つまり、返されるインデックスは、
 this.charAt(k) == ch) && (k <= fromIndex)
 
上の式が true となるような最大の k です。

パラメータ:
ch - 文字
fromIndex - 検索を開始するインデックス。fromIndex の値に対して制約はない。この文字列の長さと同じかこれより大きい場合は、この文字列の長さより 1 小さい場合と同じ結果になり、この文字列全体が検索される。負の値の場合は、-1 の場合と同じ結果になり、-1 が返される
戻り値:
このオブジェクトによって表される文字シーケンス内で、指定された文字が fromIndex と同じかこれより小さいインデックス位置に最後に出現する位置のインデックス。指定された文字がその位置より前にない場合は -1

indexOf

public int indexOf(String str)
この文字列内で、指定された部分文字列が最初に出現する位置のインデックスを返します。返される整数は、
 this.startsWith(str, k)
 
上の式が true となるような最小の k です。

パラメータ:
str - 任意の文字列
戻り値:
文字列引数がこのオブジェクト内の部分文字列である場合は、該当する最初の部分文字列の最初の文字のインデックス。部分文字列がない場合は -1
例外:
NullPointerException - strnull の場合

indexOf

public int indexOf(String str,
                   int fromIndex)
指定されたインデックス以降で、指定された部分文字列がこの文字列内で最初に出現する位置のインデックスを返します。返される整数は、次の最小値 k になります。
     k >= Math.min(fromIndex, str.length()) && this.startsWith(str, k)
 
このような k の値が存在しない場合、-1 が返されます。

パラメータ:
str - 検索対象の部分文字列
fromIndex - 検索開始位置のインデックス
戻り値:
指定されたインデックスから検索を開始して、最初に指定された部分文字列が出現する、この文字列内のインデックス
例外:
NullPointerException - strnull の場合

lastIndexOf

public int lastIndexOf(String str)
この文字列内で、指定された部分文字列が一番右に出現する位置のインデックスを返します。空の文字列 "" の一番右に出現した位置が、this.length() と見なされます。返されるインデックスは、
 this.startsWith(str, k)
 
上の式が true となるような最大の k です。

パラメータ:
str - 検索対象の部分文字列
戻り値:
文字列引数がこのオブジェクト内の部分文字列として 1 回以上出現する場合は、該当する最後の部分文字列の最初の文字のインデックス。部分文字列として出現しない場合は、-1
例外:
NullPointerException - strnull の場合

lastIndexOf

public int lastIndexOf(String str,
                       int fromIndex)
この文字列内で、指定された部分文字列が最後に出現する位置のインデックスを返します (検索は指定されたインデックスから開始され、先頭方向に行われる)。返される整数は、次を満たす最大値 k になります。
     k <= Math.min(fromIndex, str.length()) && this.startsWith(str, k)
 
このような k の値が存在しない場合、-1 が返されます。

パラメータ:
str - 検索対象の部分文字列
fromIndex - 検索開始位置のインデックス
戻り値:
この文字列内で、指定された部分文字列が最後に出現する位置のインデックス
例外:
NullPointerException - strnull の場合

substring

public String substring(int beginIndex)
この文字列の部分文字列である新しい文字列を返します。部分文字列は指定されたインデックスで始まり、この文字列の最後までになります。

例:

 "unhappy".substring(2) では "happy" が返される
 "Harbison".substring(3) では "bison" が返される
 "emptiness".substring(9) では "" (空の文字列) が返される

パラメータ:
beginIndex - 開始インデックス (この値を含む)
戻り値:
指定された部分文字列
例外:
IndexOutOfBoundsException - beginIndex が負の値の場合、あるいはこの String オブジェクトの長さより大きい場合

substring

public String substring(int beginIndex,
                        int endIndex)
この文字列の部分文字列である新しい文字列を返します。部分文字列は、指定された beginIndex から始まり、インデックス endIndex - 1 にある文字までです。したがって、部分文字列の長さは endIndex-beginIndex になります。

例:

 "hamburger".substring(4, 8) では "urge" が返される
 "smiles".substring(1, 5) では "mile" が返される

パラメータ:
beginIndex - 開始インデックス (この値を含む)
endIndex - 終了インデックス (この値を含まない)
戻り値:
指定された部分文字列
例外:
IndexOutOfBoundsException - beginIndex が負の値である場合、endIndex がこの String オブジェクトの長さより大きい場合、あるいは beginIndexendIndex より大きい場合

subSequence

public CharSequence subSequence(int beginIndex,
                                int endIndex)
このシーケンスのサブシーケンスである新規文字シーケンスを返します。

次のフォームのメソッド呼び出しは、

 str.subSequence(begin, end)
次の呼び出しと正確に同じ動作になります。
 str.substring(begin, end)
このメソッド定義により、String クラスが CharSequence インタフェースを実装可能になります。

定義:
インタフェース CharSequence 内の subSequence
パラメータ:
beginIndex - 開始インデックス (この値を含む)
endIndex - 終了インデックス (この値を含まない)
戻り値:
指定されたサブシーケンス
例外:
IndexOutOfBoundsException - beginIndex または endIndex が負の値の場合、endIndex の値が length() より大きい場合、beginIndex の値が startIndex よりも大きい場合
導入されたバージョン:
1.4

concat

public String concat(String str)
指定された文字列をこの文字列の最後に連結します。

引数文字列の長さが 0 の場合は、この String オブジェクトが返されます。そうでない場合は、この String オブジェクトによって表される文字列と引数文字列によって表される文字列とを連結したものを表す新しい String オブジェクトが生成されます。

例:

 "cares".concat("s") では "caress" が返される
 "to".concat("get").concat("her") では "together" が返される

パラメータ:
str - この String の最後に連結される String
戻り値:
このオブジェクトの文字列の後に文字列引数で表される文字を連結したものを表す文字列
例外:
NullPointerException - strnull の場合

replace

public String replace(char oldChar,
                      char newChar)
この文字列内にあるすべての oldCharnewChar に置換した結果生成される、新しい文字列を返します。

文字 oldChar がこの String オブジェクトによって表される文字列内にない場合は、この String オブジェクトへの参照が返されます。そうでない場合は、この String オブジェクトによって表される文字列と同じ文字列を表す、新しい String オブジェクトが生成されます。ただし、文字列内の oldChar はすべて newChar に置換されます。

例:

 "mesquite in your cellar".replace('e', 'o') では
         "mosquito in your collar" が返される
 "the war of baronets".replace('r', 'y') では
         "the way of bayonets" が返される
 "sparring with a purple porpoise".replace('p', 't') では
         "starring with a turtle tortoise" が返される
 "JonL".replace('q', 'x') では "JonL" (変更なし) が返される

パラメータ:
oldChar - 以前の文字
newChar - 新しい文字
戻り値:
この文字列内のすべての oldCharnewChar に置換することによって生成された文字列

matches

public boolean matches(String regex)
この文字列が、指定された正規表現と一致するかどうかを判定します。

このフォームのメソッド呼び出し str.matches(regex) では、式

Pattern.matches(regex, str)
と同じ結果が得られます。

パラメータ:
regex - この文字列との一致を判定する正規表現
戻り値:
この文字列が指定された正規表現と一致する場合にだけ、true が返される
例外:
PatternSyntaxException - 正規表現の構文が無効な場合
NullPointerException - regexnull の場合
導入されたバージョン:
1.4
関連項目:
Pattern

replaceFirst

public String replaceFirst(String regex,
                           String replacement)
指定された正規表現に一致する、この文字列の最初の部分文字列に対し、指定された置換を実行します。

このフォームのメソッド呼び出し str.replaceFirst(regex, repl) では、次の式と正確に同じ結果が得られます。

Pattern.compile(regex).matcher(str).replaceFirst(repl)

パラメータ:
regex - この文字列との一致を判定する正規表現
戻り値:
結果として得られる String
例外:
PatternSyntaxException - 正規表現の構文が無効な場合
NullPointerException - regexnull の場合
導入されたバージョン:
1.4
関連項目:
Pattern

replaceAll

public String replaceAll(String regex,
                         String replacement)
指定された正規表現に一致する、この文字列の各部分文字列に対し、指定された置換を実行します。

このフォームのメソッド呼び出し str.replaceAll(regex, repl) では、次の式と正確に同じ結果が得られます。

Pattern.compile(regex).matcher(str).replaceAll(repl)

パラメータ:
regex - この文字列との一致を判定する正規表現
戻り値:
結果として得られる String
例外:
PatternSyntaxException - 正規表現の構文が無効な場合
NullPointerException - regexnull の場合
導入されたバージョン:
1.4
関連項目:
Pattern

split

public String[] split(String regex,
                      int limit)
この文字列を、指定された正規表現に一致する位置で分割します。

この文字列の各部分文字列を含むメソッドにより返される配列は、指定された式に一致する別の部分文字列、またはその文字列の最後で終了します。配列内の部分文字列の順序は、この文字列内で出現する順序になります。入力されたどの部分とも式が一致しない場合、配列は 1 つの要素 (つまり、この文字列) だけを保持します。

limit パラメータはパターンが適用される回数を制御するため、生成される配列の長さに影響を与えます。制限 n がゼロより大きい場合、パターンは最高 n - 1 回適用され、配列の長さは n 以下になります。また、配列の最後のエントリには最後に一致した区切り文字以降の入力すべてが含まれます。n がゼロ未満の場合、パターンは可能な限り多く適用され、配列は任意の長さを保持できます。n がゼロの場合、パターンは可能な限り多く適用され、配列は任意の長さを保持でき、最後の空文字列は破棄されます。

たとえば、次のパラメータが指定された場合の、文字列 "boo:and:foo" の結果を示します。

Regex     Limit     結果
: 2 { "boo", "and:foo" }
: 5 { "boo", "and", "foo" }
: -2 { "boo", "and", "foo" }
o 5 { "b", "", ":and:f", "", "" }
o -2 { "b", "", ":and:f", "", "" }
o 0 { "b", "", ":and:f" }

このフォームのメソッド呼び出し str.split(regex, n) では、次の式と正確に同じ結果が得られます。

Pattern.compile(regex).split(str, n)

パラメータ:
regex - 正規表現の区切り
limit - 結果のしきい値 (上記を参照)
戻り値:
この文字列を指定された正規表現に一致する位置で分割して計算された文字列の配列
例外:
PatternSyntaxException - 正規表現の構文が無効な場合
NullPointerException - regexnull の場合
導入されたバージョン:
1.4
関連項目:
Pattern

split

public String[] split(String regex)
この文字列を、指定された正規表現に一致する位置で分割します。

このメソッドの動作は、2 つの引数を取る split メソッドを、指定された式および引数制限ゼロを指定して呼び出した場合と同じになります。このため、末尾の空文字列は、結果の配列に含まれません。

たとえば、次の式を指定した場合の、文字列 "boo:and:foo" の結果を示します。

Regex     結果
: { "boo", "and", "foo" }
o { "b", "", ":and:f" }

パラメータ:
regex - 正規表現の区切り
戻り値:
この文字列を指定された正規表現に一致する位置で分割して計算された文字列の配列
例外:
PatternSyntaxException - 正規表現の構文が無効な場合
NullPointerException - regexnull の場合
導入されたバージョン:
1.4
関連項目:
Pattern

toLowerCase

public String toLowerCase(Locale locale)
指定された Locale の規則を使用して、この String 内のすべての文字列を小文字に変換します。ケースマッピングは、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)

toLowerCase

public String toLowerCase()
デフォルトロケールの規則を使って、この String 内のすべての文字を小文字に変換します。これは、toLowerCase(Locale.getDefault()) の呼び出しと等価になります。

戻り値:
小文字に変換される String
関連項目:
toLowerCase(Locale)

toUpperCase

public String toUpperCase(Locale locale)
指定された Locale の規則を使用して、この String 内のすべての文字列を大文字に変換します。ケースマッピングは、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)

toUpperCase

public String toUpperCase()
デフォルトロケールの規則を使って、この String 内のすべての文字を大文字に変換します。このメソッドは、toUpperCase(Locale.getDefault()) と等価になります。

戻り値:
大文字に変換された String
関連項目:
toUpperCase(Locale)

trim

public String trim()
文字列のコピーを返します。先頭と最後の空白は省略されます。

この String オブジェクトが空の文字列を表す場合、あるいはこの String オブジェクトによって表される文字列の最初と最後の文字のコードがいずれも '\u0020' (スペース文字) より大きい場合は、この String オブジェクトへの参照が返されます。

文字列内に '\u0020' より大きいコードの文字がない場合は、空の文字列を表す新しい String オブジェクトが生成されて返されます。

たとえば、k が文字列内の最初の文字のインデックスであり、'\u0020' より大きいコード値を持ち、m が文字列内の最後の文字のインデックスであり、'\u0020' より大きいコード値を持つ場合は、インデックス k にある文字で始まり、インデックス m にある文字で終る、この文字列の部分文字列を表す新しい String オブジェクトが生成されます。つまり、これは this.substring(km+1) の結果と同じです。

このメソッドは文字列の先頭と最後から 空白を切り取るために使用できます。この場合、実際には、すべての ASCII 制御文字も切り取りられます。

戻り値:
この文字列の先頭と最後の空白を削除したコピー、またはこの文字列 (先頭と最後に空白が存在しない場合)

toString

public String toString()
このオブジェクト (すでに文字列である) 自身が返されます。

定義:
インタフェース CharSequence 内の toString
オーバーライド:
クラス Object 内の toString
戻り値:
文字列自身

toCharArray

public char[] toCharArray()
この文字列を新しい文字配列に変換します。

戻り値:
新しく割り当てられた文字配列。長さはこの文字列の長さと同じで、内容はこの文字列によって表される文字シーケンスが格納されるように初期化されている

valueOf

public static String valueOf(Object obj)
Object 引数の文字列表現を返します。

パラメータ:
obj - Object
戻り値:
引数が null の場合は、"null" に等しい文字列。そうでない場合は、obj.toString() の値
関連項目:
Object.toString()

valueOf

public static String valueOf(char[] data)
char 配列引数の文字列表現を返します。文字配列の内容がコピーされます。コピー後にその文字が変更されても、新しく作成された文字列には影響しません。

パラメータ:
data - char 配列
戻り値:
文字配列引数に格納されている同一シーケンスの文字群を表す、新しく割り当てられた文字列

valueOf

public static String valueOf(char[] data,
                             int offset,
                             int count)
char 配列引数の特定の部分配列の文字列表現を返します。

offset 引数は部分配列の最初の文字のインデックスを表します。count 引数は部分配列の長さを表します。部分配列の内容がコピーされます。コピー後に文字配列が変更されても、新しく作成された文字列には影響しません。

パラメータ:
data - 文字配列
offset - String の値への初期オフセット
count - String の値の長さ
戻り値:
文字配列引数の部分配列に格納されている文字シーケンスを表す文字列
例外:
NullPointerException - datanull の場合
IndexOutOfBoundsException - offset が負の値の場合、count が負の値の場合、あるいは offset+countdata.length より大きい場合

copyValueOf

public static String copyValueOf(char[] data,
                                 int offset,
                                 int count)
指定された配列内の文字シーケンスを表す String を返します。

パラメータ:
data - 文字配列
offset - 部分配列の初期オフセット
count - 部分配列の長さ
戻り値:
文字配列内の指定された部分配列の文字が格納されている String

copyValueOf

public static String copyValueOf(char[] data)
指定された配列内の文字シーケンスを表す String を返します。

パラメータ:
data - 文字配列
戻り値:
文字配列の文字が格納されている String

valueOf

public static String valueOf(boolean b)
boolean 引数の文字列表現を返します。

パラメータ:
b - boolean
戻り値:
引数が true の場合は、"true" に等しい文字列。そうでない場合は、"false" に等しい文字列

valueOf

public static String valueOf(char c)
char 引数の文字列表現を返します。

パラメータ:
c - char
戻り値:
1 つの文字として引数 c が格納された、長さ 1 の文字列

valueOf

public static String valueOf(int i)
int 引数の文字列表現を返します。

この表現は 1 つの引数を持つ Integer.toString メソッドによって返されるものとまったく同じです。

パラメータ:
i - int
戻り値:
int 引数の文字列表現
関連項目:
Integer.toString(int, int)

valueOf

public static String valueOf(long l)
long 引数の文字列表現を返します。

この表現は 1 つの引数を持つ Long.toString メソッドによって返されるものとまったく同じです。

パラメータ:
l - long
戻り値:
long 引数の文字列表現
関連項目:
Long.toString(long)

valueOf

public static String valueOf(float f)
float 引数の文字列表現を返します。

この表現は 1 つの引数を持つ Float.toString メソッドによって返されるものとまったく同じです。

パラメータ:
f - float
戻り値:
float 引数の文字列表現
関連項目:
Float.toString(float)

valueOf

public static String valueOf(double d)
double 引数の文字列表現を返します。

この表現は 1 つの引数を持つ Double.toString メソッドによって返されるものとまったく同じです。

パラメータ:
d - double
戻り値:
double 引数の文字列表現
関連項目:
Double.toString(double)

intern

public String intern()
文字列オブジェクトの正準表現を返します。

文字列のプールは、初期状態では空で、クラス String によってプライベートに保持されます。

intern メソッドが呼び出されたときに、equals(Object) メソッドによってこの String オブジェクトに等しいと判定される文字列がプールにすでにあった場合は、プール内の該当する文字列が返されます。そうでない場合は、この String オブジェクトがプールに追加され、この String オブジェクトへの参照が返されます。

このため、任意の 2 つの文字列 st においては、s.equals(t)true の場合にのみ、s.intern() == t.intern()true になります。

すべてのリテラル文字列および文字列値定数式が保持されます。文字列リテラルは、「Java 言語仕様」の §3.10.5 で定義されています。

戻り値:
この文字列と同じ内容だが、一意の文字列のプールからのものであることが保証されている文字列

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.