インタフェースCharSequence
- 既知のすべての実装クラス:
CharBuffer,Segment,String,StringBuffer,StringBuilder
CharSequenceは、char値の読取り可能な順序です。 このインタフェースは、さまざまな種類のcharシーケンスへの統一された読取り専用アクセスを提供します。 char値は、基本多言語面(BMP)またはサロゲートの文字を表します。 詳細は、Unicode文字表現を参照してください。
このインタフェースは、equalsメソッドとhashCodeメソッドの汎用規約を洗練させるものではありません。 このため、等価性のためにCharSequenceを実装する2つのオブジェクトのテスト結果は一般に未定義です。 各オブジェクトを異なるクラスを使用して実装できるため、各クラスがそのインスタンスをほかのクラスのインスタンスと等価かどうか検査できるという保証はありません。 したがって、任意のCharSequenceインスタンスをセット内の要素またはマップ内のキーとして使用することは不適切です。
- 導入されたバージョン:
- 1.4
-
メソッドのサマリー
修飾子と型メソッド説明charcharAt(int index) 指定されたインデックスのchar値を返します。default IntStreamchars()このシーケンスのchar値をゼロ拡張したintを含むストリームを返します。default IntStreamこのシーケンスからコード・ポイント値のストリームを返します。static intcompare(CharSequence cs1, CharSequence cs2) 2つのCharSequenceインスタンスを辞書的に比較します。default booleanisEmpty()この文字シーケンスが空の場合、trueを返します。intlength()この文字シーケンスの長さを返します。subSequence(int start, int end) このシーケンスのサブシーケンスであるCharSequenceを返します。toString()このシーケンス内の文字を含む文字列を、このシーケンスと同じ順序で返します。
-
メソッドの詳細
-
length
int length()この文字シーケンスの長さを返します。 長さはシーケンス内の16ビットcharの数に等しくなります。- 戻り値:
- このシーケンスの
charの数
-
charAt
char charAt(int index) 指定されたインデックスのchar値を返します。 索引の範囲は、0からlength() - 1です。 配列のインデックス付けの場合と同じように、シーケンスの最初のcharのインデックスは0、次の文字のインデックスは1と続きます。インデックスで指定された
char値がサロゲートの場合、サロゲート値が返されます。- パラメータ:
index- 返されるchar値のインデックス- 戻り値:
- 指定された
char値 - スロー:
IndexOutOfBoundsException-index引数が負またはlength()より小さい場合
-
isEmpty
default boolean isEmpty()この文字シーケンスが空の場合、trueを返します。- 実装要件:
- デフォルトの実装では、
length() == 0をコールした結果が返されます。 - 戻り値:
length()が0の場合はtrue、それ以外の場合はfalse- 導入されたバージョン:
- 15
-
subSequence
CharSequence subSequence(int start, int end) このシーケンスのサブシーケンスであるCharSequenceを返します。 部分列は、指定された索引のchar値で始まり、索引end - 1のchar値で終わります。 返される順序の長さ(inchars)はend - startであるため、start == endの場合は空の順序が返されます。- パラメータ:
start- 開始インデックス(この値を含む)end- 終了インデックス(この値を含まない)- 戻り値:
- 指定されたサブシーケンス
- スロー:
IndexOutOfBoundsException-startまたはendが負の値の場合、endがlength()よりも大きい場合、あるいはstartがendよりも大きい場合
-
toString
-
chars
default IntStream chars()このシーケンスのchar値をゼロ拡張したintを含むストリームを返します。 サロゲート・コード・ポイントにマップするすべてのcharは、解釈されずに渡されます。ストリームは、ターミナル・ストリーム操作が(特に、可変順序の場合、ストリームのスプリッタはlate-bindingです)で始まるときにこのシーケンスにバインドされます。 その操作中に順序が変更された場合、結果は未定義です。
- 戻り値:
- このシーケンスのchar値のIntStream
- 導入されたバージョン:
- 1.8
-
codePoints
default IntStream codePoints()このシーケンスからコード・ポイント値のストリームを返します。 そのシーケンスで検出されるサロゲート・ペアがすべて、Character.toCodePointを使用した場合のように結合され、結果がストリームに渡されます。 他のすべてのコード(通常のBMP文字、ペアになっていないサロゲート、未定義のコード単位など)はint値にゼロ拡張されたあと、ストリームに渡されます。ストリームは、ターミナル・ストリーム操作が(特に、可変順序の場合、ストリームのスプリッタはlate-bindingです)で始まるときにこのシーケンスにバインドされます。 その操作中に順序が変更された場合、結果は未定義です。
- 戻り値:
- このシーケンスからのUnicodeコード・ポイントのIntStream
- 導入されたバージョン:
- 1.8
-
compare
static int compare(CharSequence cs1, CharSequence cs2) 2つのCharSequenceインスタンスを辞書的に比較します。 最初の順序が辞書的に小さい場合、等しい場合、または2番目の値以上の場合は、それぞれ負の値のゼロまたは正の値を返します。CharSequenceの辞書的な順序付けは、次のように定義されています。 たとえば、CharSequencecsの長さがlenで、文字値の順序が[0]からcs [len-1]であるとします。 kが、各順序の対応する文字値が異なる最低の索引であるとします。 順序の辞書的な順序付けは、cs1 [k]とcs2 [k]の文字値の数値比較によって決まります。 このような索引kがない場合、短い順序は辞書的に小さいとみなされます。 順序の長さが同じ場合、順序は辞書的に同等とみなされます。- パラメータ:
cs1- 最初のCharSequencecs2- 2番目のCharSequence- 戻り値:
- 2つの
CharSequenceが等しい場合は0、最初のCharSequenceが辞書的に2番目より小さい場合は負の整数、最初のCharSequenceが辞書的に2番目の文字より大きい場合は正の整数。 - 導入されたバージョン:
- 11
-