模块  java.base
Paket java.lang

Klasse StringBuilder

  • Implementierte Schnittstellen
    Serializable , Appendable , CharSequence , Comparable<StringBuilder>

    public final class StringBuilder
    extends Object
    implements Serializable, Comparable<StringBuilder>, CharSequence
    Eine veränderbare Zeichenfolge. Diese Klasse stellt eine API bereit, die mitStringBuffer兼容的API,但不保证同步。 此类设计用作StringBuffer替代品,用于单个线程使用字符串缓冲区的位置(通常情况下)。 在可能的情况下,建议使用此类优先于StringBufferdenn sie ist in den meisten Implementierungen schneller.

    StringBuilderDie Hauptoperationen aufappend和insertDiese Methoden sind überladen, damit sie Daten jedes Typs akzeptieren. Jede Methode wandelt die gegebenen Daten in einen String um und hängt die Zeichen dieses Strings an den StringBuilder an oder fügt sie ein.appendDie Methode append fügt diese Zeichen immer am Ende des Builders hinzu.insertDie Methode insert fügt die Zeichen an einer angegebenen Position ein.

    Wenn zum Beispielzein StringBuilder-Objekt referenziert, dessen aktueller Inhalt „ start “ ist, dann führt der Methodenaufrufz.append("le")dazu, dass der StringBuilder „ startle “ enthält, währendz.insert(4, "le")den StringBuilder so ändert, dass er „ starlet“ enthält.

    Im Allgemeinen gilt: Wenn sb auf eine Instanz verweistStringBuilder ,然后sb.append(x)dieselbe Wirkung wiesb.insert(sb.length(), x) 。

    Jeder StringBuilder hat eine Kapazität. Solange die Länge der Zeichenfolge im StringBuilder die Kapazität nicht überschreitet, ist kein neuer interner Puffer nötig. Bei einem Überlauf des internen Puffers vergrößert sich dieser automatisch.

    StringBuilderEine Instanz ist nicht für die Verwendung in mehreren Threads geeignet. Wenn eine solche Synchronisation nötig ist, verwenden Sie stattdessenStringBuffer.

    Wenn kein anderer Hinweis vorliegt, führt das Übergeben einesnull-Arguments an einen Konstruktor oder eine Methode innullzu einerNullPointerException.

    API-Hinweis:
    StringBuilder实现Comparable, überschreibt aberequalsnicht. Deshalb stimmt die natürliche Ordnung vonStringBuildernicht mit equals überein. WennStringBuilder-Objekte als Schlüssel inStringBuilderoder als Elemente inSortedMapverwendet werden, SortedSet. SieheComparable,SortedMapoderSortedSetfür weitere Informationen. Seit Version: 1.5 Siehe auch:
    StringBuffer,String, Serialized Form
    • 构造方法摘要

      Konstruktor Beschreibung
      StringBuilder()
      Erstellt einen StringBuilder ohne Zeichen mit einer Anfangskapazität von 16 Zeichen.
      StringBuilder​(int capacity)
      Erstellt einen StringBuilder ohne Zeichen und mit der durch dascapacity-Argument angegebenen Anfangskapazität.
      StringBuilder​(CharSequence seq)
      Erzeugt einen String-Builder, der dieselben Zeichen enthält wie derCharSequenceangegebene.
      StringBuilder​(String str)
      Erzeugt einen String-Builder, der mit dem Inhalt des angegebenen Strings initialisiert ist.
    • 方法摘要

      Alle Methoden Instanzmethoden Konkrete Methoden Variablen und Typ Methode Beschreibung
      StringBuilder append​(boolean b)
      Hängt die String-Darstellung des Parametersbooleanan die Sequenz an.
      StringBuilder append​(char c)
      Hängt die String-Darstellung des Parameterscharan diese Sequenz an.
      StringBuilder append​(char[] str)
      Hängt die String-Darstellung des Array-Parameterscharan diese Sequenz an.
      StringBuilder append​(char[] str, int offset, int len)
      Hängt die String-Darstellung des Unterarrays des Array-Parameterscharan diese Sequenz an.
      StringBuilder append​(double d)
      Hängt die String-Darstellung des Parametersdoublean diese Sequenz an.
      StringBuilder append​(float f)
      Hängt die String-Darstellung des Parametersfloatan diese Sequenz an.
      StringBuilder append​(int i)
      Hängt die String-Darstellung des Parametersintan diese Sequenz an.
      StringBuilder append​(long lng)
      Hängt die String-Darstellung des Parameterslongan diese Sequenz an.
      StringBuilder append​(CharSequence s)
      Hängt die angegebene Zeichensequenz an diesenAppendable 。
      StringBuilder append​(CharSequence s, int start, int end)
      Hängt die angegebeneCharSequence序列追加到此序列。
      StringBuilder append​(Object obj)
      Hängt die String-Darstellung des ParametersObjectan.
      StringBuilder append​(String str)
      Hängt den angegebenen String an diese Zeichensequenz an.
      StringBuilder append​(StringBuffer sb)
      Hängt den angegebenenStringBuffer追加到此序列。
      StringBuilder appendCodePoint​(int codePoint)
      Hängt die String-Darstellung des ParameterscodePointan diese Sequenz an.
      int capacity()
      Gibt die aktuelle Kapazität zurück.
      char charAt​(int index)
      Gibt denchar值。
      IntStream chars()
      Gibt einen Stream zurück, der dieint的流,对此序列中的 charohne Vorzeichen erweitert.
      int codePointAt​(int index)
      Gibt das Zeichen (Unicode-Codepunkt) am angegebenen Index zurück.
      int codePointBefore​(int index)
      Gibt das Zeichen (Unicode-Codepunkt) vor dem angegebenen Index zurück.
      int codePointCount​(int beginIndex, int endIndex)
      Gibt die Anzahl der Unicode-Codepunkte im angegebenen Textbereich dieser Sequenz zurück.
      IntStream codePoints()
      Gibt einen Stream der Codepunktwerte in dieser Sequenz zurück.
      int compareTo​(StringBuilder another)
      StringBuilderVergleicht zwei StringBuilderInstanzen lexikografisch.
      StringBuilder delete​(int start, int end)
      Entfernt Zeichen im Teilstring dieser Sequenz.
      StringBuilder deleteCharAt​(int index)
      Entfernt an dieser Sequenz das Zeichen an der angegebenen Positionchar 。
      void ensureCapacity​(int minimumCapacity)
      Stellt sicher, dass die Kapazität mindestens dem angegebenen Minimum entspricht.
      void getChars​(int srcBegin, int srcEnd, char[] dst, int dstBegin)
      Kopiert Zeichen aus dieser Sequenz in das Ziel-Arraydst 。
      int indexOf​(String str)
      Gibt den Index des ersten Vorkommens des angegebenen Teilstrings in der Zeichenkette zurück.
      int indexOf​(String str, int fromIndex)
      Gibt ab dem angegebenen Index den Index des ersten Vorkommens des angegebenen Teilstrings in der Zeichenkette zurück.
      StringBuilder insert​(int offset, boolean b)
      Fügt die Zeichenketten-Darstellung des Parametersbooleanin diese Sequenz ein.
      StringBuilder insert​(int offset, char c)
      Fügt die Zeichenketten-Darstellung des Parameterscharin diese Sequenz ein.
      StringBuilder insert​(int offset, char[] str)
      Fügt die Zeichenketten-Darstellung des Array-Parameterscharin diese Sequenz ein.
      StringBuilder insert​(int index, char[] str, int offset, int len)
      Fügt die Zeichenketten-Darstellung des Teilarrays des Array-Parametersstrin diese Sequenz ein.
      StringBuilder insert​(int offset, double d)
      Fügt die Zeichenketten-Darstellung des Parametersdoublein diese Sequenz ein.
      StringBuilder insert​(int offset, float f)
      Fügt die Zeichenketten-Darstellung des Parametersfloatin diese Sequenz ein.
      StringBuilder insert​(int offset, int i)
      Fügt die Zeichenketten-Darstellung des zweiten Parametersintin diese Sequenz ein.
      StringBuilder insert​(int offset, long l)
      Fügt die Zeichenketten-Darstellung des Parameterslongin diese Sequenz ein.
      StringBuilder insert​(int dstOffset, CharSequence s)
      Fügt das angegebeneCharSequence插入此序列。
      StringBuilder insert​(int dstOffset, CharSequence s, int start, int end)
      Fügt die angegebene SequenzCharSequencein diese Sequenz ein.
      StringBuilder insert​(int offset, Object obj)
      Fügt die Zeichenketten-Darstellung des ParametersObjectin diese Zeichensequenz ein.
      StringBuilder insert​(int offset, String str)
      Fügt die Zeichenkette in diese Zeichensequenz ein.
      int lastIndexOf​(String str)
      Gibt den Index des letzten Vorkommens des angegebenen Teilstrings in der Zeichenkette zurück.
      int lastIndexOf​(String str, int fromIndex)
      Gibt den Index des letzten Vorkommens des angegebenen Teilstrings zurück. Die Suche läuft ab dem angegebenen Index rückwärts.
      int length()
      Gibt die Länge (Anzahl der Zeichen) zurück.
      int offsetByCodePoints​(int index, int codePointOffset)
      Gibt den Index in dieser Sequenz zurück. Der Index beginnt beim angegebenenindexOffset codePointOffsetCodepunkte.
      StringBuilder replace​(int start, int end, String str)
      Ersetzt die Zeichen in einem Teilstring dieser Sequenz durch die ZeichenStringder angegebenen Sequenz.
      StringBuilder reverse()
      Führt dazu, dass diese Zeichensequenz durch die Umkehrung der Sequenz ersetzt wird.
      void setCharAt​(int index, char ch)
      Setzt das Zeichen am angegebenen Index aufch 。
      void setLength​(int newLength)
      Setzt die Länge der Zeichensequenz.
      CharSequence subSequence​(int start, int end)
      Gibt eine neue Zeichensequenz zurück, die eine Teilsequenz dieser Sequenz ist.
      String substring​(int start)
      Gibt eine neueString zurück, die eine Teilsequenz der aktuell enthaltenen Zeichen dieser Zeichensequenz enthält.
      String substring​(int start, int end)
      Gibt eine neueString zurück, die eine Teilsequenz der aktuell in dieser Sequenz enthaltenen Zeichen enthält.
      void trimToSize()
      Versucht, den Speicherplatz für die Zeichensequenz zu reduzieren.
    • 构造方法详细信息

      • StringBuilder

        public StringBuilder()
        Konstruiert einen String-Builder ohne Zeichen mit einer Anfangskapazität von 16 Zeichen.
      • StringBuilder

        public StringBuilder​(int capacity)
        Konstruiert einen String-Builder ohne Zeichen und mit der Anfangskapazität,capacitydie der Parameter angibt.
        Parameter
        capacity- Anfangskapazität. Ausnahme
        NegativeArraySizeException - 如果 capacityParameter kleiner als 0ist.
      • StringBuilder

        public StringBuilder​(String str)
        Konstruiert einen String-Builder, der mit dem Inhalt des angegebenen Strings initialisiert ist. Die Anfangskapazität des String-Builders beträgt16plus die Länge des String-Parameters.
        Parameter
        str- Anfangsinhalt des Puffers.
      • StringBuilder

        public StringBuilder​(CharSequence seq)
        Konstruiert einen String-Builder mit denselben Zeichen wie die angegebeneCharSequence. Die Anfangskapazität des String-Builders beträgt16加上CharSequenceParameters.
        Parameter
        seq- Die zu kopierende Sequenz.
    • 方法详细信息

      • compareTo

        public int compareTo​(StringBuilder another)
        StringBuildervergleicht zweiStringBuilderBeispiele in lexikografischer Reihenfolge. Diese Methode folgt denselben Regeln der lexikografischen Vergleichs wie in der Methode CharSequence.compare(this, another) definiert. Für feingranulare, gebietsschemaabhängige Zeichenkettenvergleiche siehe

        Collator.

        Specified by:
        compareTo在接口 Comparable<StringBuilder>
        Parameter
        another - Das StringBuilder
        Ergebnis Wert
        0如果此StringBuilderdieselbe Zeichenfolge wie der ParameterStringBuilderenthält; ein negativer Integer, wenn diesesStringBuilderlexikografisch kleiner als derStringBuilder参数, StringBuilderist; einStringBuildernegativer Integer, wenn diesesStringBuilder参数, StringBuilderParameter ist. Seit Version: 11
      • append

        public StringBuilder append​(Object obj)
        Hängt dieObjectString-Darstellung des Parameters an. Die Gesamtwirkung ist genau dieselbe wie bei der Methode

        String.valueOf(Object)Der Parameter wird in einen String konvertiert. Danach werden die Zeichen dieses Stringsappendedangehängt.

        Parameter
        obj - Object. Ergebnis Eine Referenz auf dieses Objekt.
      • append

        public StringBuilder append​(String str)
        Hängt das angegebene字符串追加到此字符序列。

        按顺序附加StringParameters werden der Reihe nach angehängt. Die Länge dieser Sequenz wächst um die Länge des Parameters. Wennstr是null , werden vier Zeichen angehängt"null" 。

        Sei n die Länge dieser Zeichenfolge vor der Ausführung derappendMethode. Wenn k kleiner als n ist, ist das Zeichen an Index k in der neuen Zeichenfolge gleich dem Zeichen an Index k in der alten Zeichenfolge. Andernfalls ist es gleich dem Zeichen an Index k-n im Parameterstr.

        Parameter
        str- Ein String. Ergebnis Eine Referenz auf dieses Objekt.
      • append

        public StringBuilder append​(StringBuffer sb)
        Hängt die angegebeneStringBufferan diese Sequenz an.

        StringBufferDie Zeichen des Parameters werden der Reihe nach an diese Sequenz angehängt. Die Länge der Sequenz wächst um die Länge des Parameters. Wennsb是null ,则将四个字符"null"an diese Sequenz angehängt.

        Sei n die Länge dieser Zeichenfolge vor der Ausführung derappend-Methode. Wenn k kleiner als n ist, gilt für das Zeichen am Index k in der neuen Zeichenfolge das Zeichen am Index k in der alten Zeichenfolge. Andernfalls gilt das Zeichen am Index k-n im Argumentsb.

        Argument
        sb - 要追加的 StringBuffer. Rückgabewert eine Referenz auf dieses Objekt.
      • append

        public StringBuilder append​(CharSequence s,
                                    int start,
                                    int end)
        hängt die指定的CharSequence-Sequenz an diese Sequenz an. Die Zeichen des Arguments

        startab Indexswerden der Reihe nach an den Inhalt dieser Sequenz angehängt, bis zum (exklusiven) Indexend. Die Länge dieser Sequenz erhöht sich um den Wertend - start 。

        Sei n die Länge dieser Zeichenfolge vor der Ausführung derappend-Methode. Wenn k kleiner als n ist, wird das Zeichen am Index k in dieser Zeichenfolge gleich dem Zeichen am Index k in dieser Sequenz. Andernfalls gilt das Zeichen am Index k + start-n im Arguments.s 。

        Wenns是null , hängt diese Methode Zeichen an, als wäre das Argument s eine Sequenz, die die vier Zeichen"null"的序列"null" 。

        Specified by:
        append在接口 Appendable
        Parameter
        s- Die anzuhängende Sequenz.
        start- Der Startindex der anzuhängenden Untersequenz.
        end- Der Endindex der anzuhängenden Untersequenz. Ergebnis Eine Referenz auf dieses Objekt. Ausnahme
        IndexOutOfBoundsException - 如果 start为负数,或 start大于 endoder end大于 s.length()
      • append

        public StringBuilder append​(char[] str)
        hängt diecharZeichenfolgendarstellung des Array-Parameters an diese Sequenz an. Die Zeichen des Array-Parameters werden in dieser Reihenfolge an den Inhalt dieser Sequenz angehängt. Die Länge dieser Sequenz erhöht sich um die Länge des Parameters.

        Die Gesamtwirkung ist so, als würde der Parameter durch die MethodeString.valueOf(char[])in eine Zeichenfolge umgewandelt, und die Zeichen dieser Zeichenfolge sind danach Teil dieser Zeichensequenzappended.

        Parameter
        str- Die anzuhängenden Zeichen. Ergebnis Eine Referenz auf dieses Objekt.
      • append

        public StringBuilder append​(char[] str,
                                    int offset,
                                    int len)
        HängtcharZeichenfolgendarstellung des Unterarrays des Array-Parameters an diese Sequenz an. Die

        offset开始的char阵列strZeichen des Arrays werden in dieser Reihenfolge an den Inhalt dieser Sequenz angehängt. Die Länge dieser Sequenz erhöht sich um den Wertlen 。

        Die Gesamtwirkung ist so, als würde der Parameter durch die MethodeString.valueOf(char[],int,int)in eine Zeichenfolge umgewandelt, und die Zeichen dieser Zeichenfolge sind für diese Zeichensequenz dannappended.

        Parameter
        str- Die anzuhängenden Zeichen.
        offset - Der Index des ersten anzuhängenden char.
        len - 要追加的 char. Ergebnis Eine Referenz auf dieses Objekt. Ausnahme
        IndexOutOfBoundsException - Wenn offset < 0oder len < 0oder offset+len > str.length
      • append

        public StringBuilder append​(boolean b)
        Hängt diebooleanZeichenfolgendarstellung des Parameters an die Sequenz an. Die Gesamtwirkung ist so, als würde der Parameter durch die Methode

        String.valueOf(boolean)Der Parameter wird wie bei der Umwandlung in einen String behandelt, und die Zeichen dieses Strings sind danach Teil dieser Zeichenfolgeappended.

        Parameter
        b - boolean. Der Rückgabewert ist eine Referenz auf dieses Objekt.
      • append

        public StringBuilder append​(char c)
        Die Methode hängtchardie String-Darstellung des Parameters an diese Sequenz an. Der Parameter wird an den Inhalt dieser Sequenz angehängt. Die Länge der Sequenz erhöht sich

        1 。

        Der Gesamteffekt ist derselbe, als würde die MethodeString.valueOf(char)Konvertiert den Parameter in einen String wie und die Zeichen in diesem String sind danach die Zeichen dieser Sequenzappended.

        Specified by:
        append在接口 Appendable
        Parameter
        c - a char. Ergebnis Eine Referenz auf dieses Objekt.
      • append

        public StringBuilder append​(int i)
        Hängt dieintString-Darstellung des Parameters an diese Sequenz an. Der Gesamteffekt entspricht der Methode

        String.valueOf(int)Die Methode konvertiert das Argument in einen String. Danach sind die Zeichen des Stringsappended.

        Parameter
        i - int. Der Rückgabewert ist eine Referenz auf dieses Objekt.
      • append

        public StringBuilder append​(long lng)
        Hängt dielongdie String-Darstellung des Arguments an diese Sequenz an. Der Gesamteffekt entspricht der Methode

        String.valueOf(long)Die Methode konvertiert das Argument in einen String. Danach sind die Zeichen des Stringsappended.

        Parameter
        lng - long。 Rückgabewert ist eine Referenz auf dieses Objekt.
      • append

        public StringBuilder append​(float f)
        Hängt diefloatDie Methode hängt die Zeichenfolgendarstellung des Parameters an diese Sequenz an. Der Gesamteffekt entspricht dem Aufruf der Methode

        String.valueOf(float)in eine Zeichenfolge umgewandelt, und die Zeichen dieser Zeichenfolge sind danach Teil dieser Zeichensequenzappended.

        Parameter
        f - a float。 Rückgabewert: Eine Referenz auf dieses Objekt.
      • append

        public StringBuilder append​(double d)
        Fügt die Stringdarstellung eines Unterarrays desdoubleZeichenfolgendarstellung des Parameters an diese Sequenz an. Der Gesamteffekt ist derselbe wie bei der Konvertierung des Parameters in eine Zeichenfolge durch die Methode

        String.valueOf(double). Die Zeichen dieser Zeichenfolge sind danach Teil dieser Zeichensequenzappended.

        Parameter
        d - a double. Rückgabewert: Eine Referenz auf dieses Objekt.
      • appendCodePoint

        public StringBuilder appendCodePoint​(int codePoint)
        Fügt diecodePointZeichenfolgendarstellung des Parameters an diese Sequenz an. Der Parameter wird an den Inhalt dieser Sequenz angehängt. Die Länge dieser Sequenz erhöht sich

        Character.charCount(codePoint).

        Der Gesamteffekt ist derselbe wie bei der Konvertierung des Parameters in einCharacter.toChars(int)-Array durch die Methodechar. Die Zeichen dieses Arrays sind danach Teilappended.

        Parameter
        codePoint- Unicode-Codepunkt. Rückgabewert: Eine Referenz auf dieses Objekt. Seit Version: 1.5
      • delete

        public StringBuilder delete​(int start,
                                    int end)
        Entfernt die Zeichen in einem Teilstring dieser Sequenz. Der Teilstring beginnt am angegebenenstartund erstreckt sich bis zum Zeichen am Indexend - 1oder bis zum Ende der Sequenz, falls ein solches Zeichen nicht existiert. Wennstart等于endist, erfolgt keine Änderung.
        Parameter
        start- Startindex, einschließlich.
        end- Endindex, ausschließlich. Rückgabewert: Dieses Objekt. Ausnahme
        StringIndexOutOfBoundsException - 如果 start为负数,大于 length() ,或大于 endist.
      • deleteCharAt

        public StringBuilder deleteCharAt​(int index)
        Entfernt dascharan der angegebenen Position in dieser Sequenz. Die Sequenz wird um eincharverkürzt. Hinweis: Wenn das Zeichen am angegebenen Index ein ergänzendes Zeichen ist, entfernt diese Methode nicht das gesamte Zeichen. Für die korrekte Verarbeitung ergänzender Zeichen müssen Sie die Anzahl der zu entfernenden

        Character.charCount(thisSequence.codePointAt(index))s durch den Aufruf vonchar bestimmen, wobeithisSequencediese Sequenz ist.

        Parameter
        index - Der Index des zu löschenden Zeichens char
        Rückgabewert Dieses Objekt. Ausnahme
        StringIndexOutOfBoundsException - 如果 index为负数或大于或等于 length().
      • replace

        public StringBuilder replace​(int start,
                                     int end,
                                     String str)
        Ersetzt die Zeichen in einem Teilstring dieser Sequenz durch die Zeichen des angegebenenString. Der Teilstring beginnt am angegebenenstartund erstreckt sich bis zum Zeichen am Indexend - 1oder bis zum Ende der Sequenz, falls ein solches Zeichen nicht existiert. Zuerst werden die Zeichen im Teilstring entfernt. Danach wird das angegebeneStringan dieser Stellestarteingefügt. (Diese Sequenz wird bei Bedarf verlängert, um den angegebenen String aufzunehmen.)
        Parameter
        start- Der Startindex, einschließlich.
        end- Der Endindex, ausschließlich.
        str- Der String, der den bisherigen Inhalt ersetzt. Rückgabewert Dieses Objekt. Ausnahme
        StringIndexOutOfBoundsException - 如果 start为负数,大于 length() ,或大于 endist.
      • insert

        public StringBuilder insert​(int index,
                                    char[] str,
                                    int offset,
                                    int len)
        Fügt diestrArrays in diese Sequenz ein. Das Unterarray beginnt am angegebenenoffset开始,并扩展len chars. Die Zeichen des Unterarrays werden an der durchindexangegebenen Position in diese Sequenz eingefügt. Die Länge dieser Sequenz erhöht sich umlen chars.
        Parameter
        index- Die Position, an der das Unterarray eingefügt wird.
        str - charArray.
        offset - Der Index des ersten charim einzufügenden Unterarray.
        len - Die Anzahl der chars im einzufügenden Unterarray. Rückgabewert Dieses Objekt. Ausnahme
        StringIndexOutOfBoundsException - 如果 index为负数或大于 length() ,或 offsetoder len为负数,或者 (offset+len)大于 str.length。
      • insert

        public StringBuilder insert​(int offset,
                                    Object obj)
        Fügt die Stringdarstellung desObjectString-Darstellung des Parameters in diese Zeichenfolge ein. Der Gesamteffekt ist genau derselbe, als würde der zweite Parameter durch die Methode

        String.valueOf(Object)in einen String konvertiert, und die Zeichen dieses Strings stehen in der Zeichenfolge an den angegebenen Offsets fürinserted。

        offset参数必须大于或等于0sein und kleiner oder gleich der length dieser Sequenz.

        Parameter
        offset- Der Offset.
        obj - Object。 Rückgabewert Eine Referenz auf dieses Objekt. Ausnahme
        StringIndexOutOfBoundsException- Wenn der Offset ungültig ist.
      • insert

        public StringBuilder insert​(int offset,
                                    String str)
        Fügt einen String in diese Zeichenfolge ein.

        StringDie Zeichen des Parameters werden in der angegebenen Reihenfolge an den angegebenen Offset in diese Sequenz eingefügt. Dabei werden alle Zeichen, die sich ursprünglich an dieser Position oder darüber befanden, nach oben verschoben, und die Länge der Sequenz erhöht sich um die Länge des Parameters. Wennstr是null ,则将四个字符"null"in die Sequenz eingefügt.

        Das Zeichen an Index k in der neuen Zeichenfolge entspricht:

        • Wenn k kleiner alsoffsetist, das Zeichen an Index k in der alten Zeichenfolge
        • Parameterstrdas Zeichen an Index k-offsetim Parameter, wenn k nicht kleiner alsoffset但小于offset+str.length()
        • ist, das Zeichen an Index k-str.length()in der alten Zeichenfolge, wenn k nicht kleiner alsoffset+str.length()

        offset参数必须大于或等于0sein und kleiner oder gleich der length dieser Sequenz.

        Parameter
        offset- Der Offset.
        str- Ein String. Rückgabewert Eine Referenz auf dieses Objekt. Ausnahme
        StringIndexOutOfBoundsException- Wenn der Offset ungültig ist.
      • insert

        public StringBuilder insert​(int offset,
                                    char[] str)
        Fügt die Stringdarstellung descharString-Darstellung des Array-Parameters in diese Sequenz ein. Die Zeichen des Array-Parameters werden an der durch

        offsetangegebenen Position in den Inhalt der Sequenz eingefügt. Die Länge der Sequenz erhöht sich um die Länge des Parameters.

        Der Gesamteffekt ist derselbe, als würde der zweite Parameter durch die MethodeString.valueOf(char[])Das Zeichen wird wie bei der Konvertierung in eine Zeichenkette umgewandelt. Das Zeichen dieser Zeichenfolge steht an dem angegebenen Offset.inserted.

        offset参数必须大于或等于0sein und kleiner oder gleich der length dieser Sequenz.

        Parameter
        offset- Offset.
        str- Zeichen-Array. Rückgabewert Eine Referenz auf dieses Objekt. Ausnahme
        StringIndexOutOfBoundsException- wenn der Offset ungültig ist.
      • insert

        public StringBuilder insert​(int dstOffset,
                                    CharSequence s)
        Fügt die angegebeneCharSequencein diese Sequenz ein.

        CharSequenceDie Zeichen des Parameters werden in der angegebenen Reihenfolge an den angegebenen Offset eingefügt. Dadurch verschieben sich alle Zeichen, die sich ursprünglich an dieser Position befanden. Die Länge der Sequenz erhöht sich um die Länge des Parameters s.

        Das Ergebnis dieser Methode ist identisch mit dem Aufruf der Methodeinsert(dstOffset, s, 0, s.length()) dieses Objekts.

        Wenns是null ,则将四个字符"null"in diese Sequenz eingefügt.

        Parameter
        dstOffset- Offset.
        s- Die einzufügende Sequenz. Rückgabewert Eine Referenz auf dieses Objekt. Ausnahme
        IndexOutOfBoundsException- wenn der Offset ungültig ist.
      • insert

        public StringBuilder insert​(int dstOffset,
                                    CharSequence s,
                                    int start,
                                    int end)
        Fügt die angegebeneCharSequenceSequenz in diese Sequenz ein. Die Untersequenz des Parameters

        swird durch Angabe vonstart和endeingefügt. Sie erscheint am angegebenen Ziel-Offset in dieser Sequenz. Zeichen, die sich ursprünglich an dieser Position befanden, verschieben sich nach oben. Die Länge der Sequenz erhöht sich umend - start 。

        Das Zeichen an Index k in dieser Sequenz wird gleich:

        • Wenn k kleiner alsdstOffsetist, gilt das Zeichen an Index k in dieser Sequenz
        • ParametersDas Zeichen an Index k+start-dstOffsetin , wenn k größer oder gleichdstOffset但小于dstOffset+end-start
        • ist. Wenn k größer oder gleichdstOffset+end-startist, gilt das Zeichen an Index k-(end-start)in dieser Sequenz

        dstOffset参数必须大于或等于0, und kleiner oder gleich der length dieser Sequenz ist.

        Der Parameter start muss nichtnegativ sein und darf nicht größerend 。

        Der Parameter end muss größer oder gleichstartund kleiner oder gleich der Länge von s sein.

        Wenns是null ist, fügt diese Methode Zeichen ein, als wäre der Parameter s eine Sequenz mit den vier Zeichen"null"的序列"null" 。

        Parameter
        dstOffset- Der Offset in dieser Sequenz.
        s- Die einzufügende Sequenz.
        start- Der Startindex der einzufügenden Teilsequenz.
        end- Der Endindex der einzufügenden Teilsequenz. Rückgabewert Eine Referenz auf dieses Objekt. Ausnahmen
        IndexOutOfBoundsException - 如果 dstOffset为负数或大于 this.length() ,或 startoder end为负数,或 start大于 endoder end大于 s.length()
      • insert

        public StringBuilder insert​(int offset,
                                    boolean b)
        Fügt die String-Darstellung desbooleanParameters in diese Sequenz ein. Der Gesamteffekt ist genau derselbe wie beim zweiten Parameter, der durch die Methode

        String.valueOf(boolean)in einen String konvertiert wird. Die Zeichen dieses Strings gehen an dem angegebenen Offset in diese Zeichenfolge ein, gefolgt voninserted.

        offset参数必须大于或等于0und kleiner oder gleich der length dieser Sequenz sein.

        Parameter
        offset- Der Offset.
        b - a boolean. Rückgabewert Eine Referenz auf dieses Objekt. Ausnahmen
        StringIndexOutOfBoundsException- Wenn der Offset ungültig ist.
      • insert

        public StringBuilder insert​(int offset,
                                    char c)
        Fügt die String-Darstellung descharParameters in diese Sequenz ein. Der Gesamteffekt ist genau derselbe wie beim zweiten Parameter, der durch die Methode

        String.valueOf(char)in einen String konvertiert wird. Die Zeichen dieses Strings gehen an dem angegebenen Offset in diese Zeichenfolge ein, gefolgt voninserted.

        offset参数必须大于或等于0und kleiner oder gleich der length dieser Sequenz sein.

        Parameter
        offset- Der Offset.
        c - a char. Rückgabewert Eine Referenz auf dieses Objekt. Ausnahme
        IndexOutOfBoundsException- Wenn der Offset ungültig ist.
      • insert

        public StringBuilder insert​(int offset,
                                    int i)
        Fügt die String-Darstellung des zweitenintParameters in diese Sequenz ein. Der Gesamteffekt ist so, als würde der zweite Parameter durch die Methode

        String.valueOf(int)in einen String umgewandelt, und die Zeichen dieses Strings werden an der angegebenen Position in der Zeichensequenzinsertedeingefügt.

        offset参数必须大于或等于0und kleiner oder gleich der length dieser Sequenz sein.

        Parameter
        offset- Der Offset.
        i - int. Rückgabewert Eine Referenz auf dieses Objekt. Ausnahme
        StringIndexOutOfBoundsException- Wenn der Offset ungültig ist.
      • insert

        public StringBuilder insert​(int offset,
                                    long l)
        Fügt dielongParameters in diese Sequenz ein. Der Gesamteffekt ist genau so, als würde der zweite Parameter durch eine Methode in einen String umgewandelt

        String.valueOf(long), und die Zeichen dieses Strings werden danninsertedan der angegebenen Position in diese Zeichensequenz eingefügt.

        offset参数必须大于或等于0und kleiner oder gleich der length dieser Sequenz sein.

        Parameter
        offset- Der Offset.
        l - long. Rückgabewert Eine Referenz auf dieses Objekt. Ausnahme
        StringIndexOutOfBoundsException- Wenn der Offset ungültig ist.
      • insert

        public StringBuilder insert​(int offset,
                                    float f)
        将floatParameters in diese Sequenz ein. Der Gesamteffekt ist identisch mit der Umwandlung des zweiten Parameters in einen String durch die Methode

        String.valueOf(float), und die Zeichen dieses Strings werden an der angegebenen Position in der Zeichensequenzinsertedeingefügt.

        offset参数必须大于或等于0und kleiner oder gleich der length dieser Sequenz sein.

        Parameter
        offset- Der Offset.
        f - float。 Das Ergebnis ist eine Referenz auf dieses Objekt. Ausnahme
        StringIndexOutOfBoundsException- wenn der Offset ungültig ist.
      • insert

        public StringBuilder insert​(int offset,
                                    double d)
        将doubleString-Darstellung des Arguments in diese Sequenz ein. Der Gesamteffekt ist genau derselbe wie bei der Methode

        String.valueOf(double)zur Konvertierung des zweiten Arguments in einen String. Die Zeichen dieses Strings werden an den angegebenen Offset in der Zeichensequenz eingefügtinserted.

        offset参数必须大于或等于0und kleiner oder gleich der length dieser Sequenz sein.

        Parameter
        offset- der Offset.
        d - a double。 Das Ergebnis ist eine Referenz auf dieses Objekt. Ausnahme
        StringIndexOutOfBoundsException- wenn der Offset ungültig ist.
      • indexOf

        public int indexOf​(String str)
        Gibt den Index des ersten Vorkommens des angegebenen Teilstrings im String zurück. Der zurückgegebene Index ist der kleinste Wert

        k ,其中:

           this.toString().startsWith(str, k)  
        Wenn kein solcher Wertk存在,那么-1返回。
        Parameter
        str- der zu suchende Teilstring. Ergebnis: der Index des ersten Vorkommens des angegebenen Teilstrings. Wenn dies nicht zutrifft,
        -1.
      • indexOf

        public int indexOf​(String str,
                           int fromIndex)
        从指定的索引处开始,返回指定子字符串第一次出现的字符串中的索引。

        返回的索引是最小值k ,其中:

           k >= Math.min(fromIndex, this.length()) && this.toString().startsWith(str, k)  
        Wenn kein solcher Wertk存在,那么-1返回。
        Parameter
        str- der zu suchende Teilstring.
        fromIndex- der Index, ab dem die Suche beginnt. Ergebnis: der Index des ersten Vorkommens des angegebenen Teilstrings ab dem angegebenen Index. Wenn dies nicht zutrifft,
        -1.
      • lastIndexOf

        public int lastIndexOf​(String str)
        Gibt den Index des letzten Vorkommens des angegebenen Teilstrings im String zurück. Das letzte Vorkommen des leeren Strings "" gilt als am Indexwertthis.length(). Der zurückgegebene Index ist der größte Wert

        k ,其中:

           this.toString().startsWith(str, k)  
        Wenn kein solcher Wertk存在,那么-1返回。
        Parameter
        str- Der zu suchende Teilstring. Ergebnis Der Index des letzten Vorkommens des angegebenen Teilstrings. Wenn dies nicht der Fall ist,
        -1.
      • lastIndexOf

        public int lastIndexOf​(String str,
                               int fromIndex)
        Gibt den Index des letzten Vorkommens des angegebenen Teilstrings im String zurück. Die Suche beginnt ab dem angegebenen Index und läuft rückwärts. Der zurückgegebene Index ist der größte Wert

        k ,其中:

           k <= Math.min(fromIndex, this.length()) && this.toString().startsWith(str, k)  
        Wenn kein solcher Wertk存在,那么-1返回。
        Parameter
        str- Der zu suchende Teilstring.
        fromIndex- Der Index, ab dem die Suche startet. Ergebnis Der Index des letzten Vorkommens des angegebenen Teilstrings. Die Suche läuft ab dem angegebenen Index rückwärts. Wenn dies nicht der Fall ist,
        -1.
      • reverse

        public StringBuilder reverse()
        Ersetzt diese Zeichenfolge durch ihre Umkehrung. Enthält die Sequenz Surrogatpaare, behandelt die Methode diese Paare als einzelne Zeichen. Deshalb kehrt die Methode die Reihenfolge von High- und Low-Surrogaten nie um. Sei n die Zeichenlänge dieser Zeichenfolge vor der Ausführung derreverseMethode (nicht die Länge imcharWert). Dann gilt: Das Zeichen an Index k in der neuen Zeichenfolge entspricht dem Zeichen an Index n-k-1 in der alten Zeichenfolge. Beachten Sie: Die Umkehrung erzeugt Surrogatpaare aus zuvor ungepaarten Low- und High-Surrogaten. Zum Beispiel erzeugt die Umkehrung von "\uDC00\uD800" das Ergebnis "\uD800\uDC00". Dies ist ein gültiges Surrogatpaar.

        Ergebnis Eine Referenz auf dieses Objekt.
      • length

        public int length()
        Gibt die Länge zurück (Anzahl der Zeichen).
        Specified by:
        length在接口 CharSequence
        Ergebnis Die Länge der aktuell durch dieses Objekt dargestellten Zeichenfolge
      • capacity

        public int capacity()
        Gibt die aktuelle Kapazität zurück. Die Kapazität ist der Speicherplatz für neu eingefügte Zeichen. Bei Überschreitung erfolgt eine neue Zuweisung.
        Ergebnis Die aktuelle Kapazität
      • ensureCapacity

        public void ensureCapacity​(int minimumCapacity)
        Stellt sicher, dass die Kapazität mindestens dem angegebenen Mindestwert entspricht. Ist die aktuelle Kapazität kleiner als der Parameter, weist die Methode ein neues internes Array mit größerer Kapazität zu. Die neue Kapazität ist der größere Wert von:
        • minimumCapacity参数。
        • Das Doppelte der alten Kapazität, plus2 。
        Ist derminimumCapacityParameter nicht positiv, führt die Methode keine Aktion aus und gibt nur zurück. Beachten Sie: Spätere Operationen an diesem Objekt senken die tatsächliche Kapazität unter den hier angeforderten Wert.
        Parameter
        minimumCapacity- Die erforderliche Mindestkapazität.
      • trimToSize

        public void trimToSize()
        Versucht, den Speicherplatz für die Zeichenfolge zu reduzieren. Ist der Puffer größer als für die aktuelle Zeichenfolge nötig, passt die Methode seine Größe an. So wird der Speicherplatz effizienter genutzt. Der Aufruf dieser Methode beeinflusst den Rückgabewert dercapacity()Methode bei späteren Aufrufen, muss dies aber nicht.
      • setLength

        public void setLength​(int newLength)
        Legt die Länge der Zeichenfolge fest. Die Sequenz wird in eine neue Zeichenfolge geändert, deren Länge durch den Parameter bestimmt wird. Für jede nichtnegative Zahl knewLengthist das Zeichen an Index k der neuen Zeichenfolge identisch mit dem Zeichen an Index k der alten Sequenz, wenn k kleiner als die Länge der ursprünglichen Zeichenfolge ist. Andernfalls ist es das Nullzeichen'\u0000'. Mit anderen Worten, wennnewLengthder Parameter kleiner als die aktuelle Länge ist, wird die Länge auf den angegebenen Wert geändert. Wenn

        newLengthder Parameter größer oder gleich der aktuellen Länge ist, werden ausreichend Nullzeichen ( '\u0000' ) angehängt, damit die Länge demnewLength参数。

        newLength参数必须大于或等于0 。

        Parameter
        newLength- die neue Länge. Ausnahme
        IndexOutOfBoundsException - 如果 newLengthParameter negativ ist.
      • charAt

        public char charAt​(int index)
        Gibt dencharWert dieser Sequenz am angegebenen Index zurück. Der erstecharWert befindet sich an Index0 , der nächste an Index1und so weiter, wie bei Array-Indizes. Der Parameter index muss größer oder gleich

        0sein und kleiner als die Länge dieser Sequenz.

        Wenn der durch den Index angegebenecharWert ein Surrogat ist, wird der Surrogatwert zurückgegeben.

        Specified by:
        charAt在接口 CharSequence
        Parameter
        index - der Index des benötigten charWerts. Ergebnis: der
        charWert am angegebenen Index. Ausnahme
        IndexOutOfBoundsException - 如果 index为负数或大于或等于 length()ist.
      • codePointAt

        public int codePointAt​(int index)
        Gibt das Zeichen am angegebenen Index zurück (Unicode-Codepunkt). Der Index bezieht sich aufcharWerte (Unicode-Codeeinheiten) im Bereich von0bisCharSequence.length() - 1. Wenn der am angegebenen Index befindliche

        charWert im Bereich hoher Surrogate liegt, der folgende Index kleiner als die Länge dieser Sequenz ist und dercharWert am folgenden Index im Bereich niedriger Surrogate liegt, wird der ergänzende Codepunkt zurückgegeben, der diesem Surrogatpaar entspricht. Andernfalls wird derchar值。

        Parameter
        index - charIndex des Werts Ergebnis
        indexCodepunktwert des Zeichens an der Stelle Ausnahme
        IndexOutOfBoundsException - 如果 indexArgument negativ ist oder nicht kleiner als die Länge dieser Sequenz.
      • codePointBefore

        public int codePointBefore​(int index)
        Gibt das Zeichen (Unicode-Codepunkt) vor dem angegebenen Index zurück. Der Index bezieht sich aufcharWerte (Unicode-Codeeinheiten), der Bereich reicht von1bisCharSequence.length(). Wenn der

        char在值(index - 1)im niedrigen Surrogate-Bereich liegt, (index - 2)nicht negativ ist undchar在值(index - 2)im hohen Surrogate-Bereich liegt, gibt die Methode den ergänzenden Codepunktwert des Surrogate-Paars zurück. Wenn derchar在值index - 1ein ungepaartes niedriges Surrogate oder ein hohes Surrogate ist, gibt die Methode diesen Ersatzwert zurück.

        Parameter
        index- der Index vor dem Codepunkt, der zurückgegeben werden soll. Ergebnis Der Unicode-Codepunktwert vor dem angegebenen Index. Ausnahme
        IndexOutOfBoundsException - 如果 indexArgument kleiner als 1 oder größer als die Länge dieser Sequenz ist.
      • codePointCount

        public int codePointCount​(int beginIndex,
                                  int endIndex)
        Gibt die Anzahl der Unicode-Codepunkte im angegebenen Textbereich dieser Sequenz zurück. Der Textbereich beginnt am angegebenenbeginIndex und erstreckt sich bis zumchar在索引endIndex - 1. Die Länge des Textbereichs (inchar s) beträgt daherendIndex-beginIndex. Ungepaarte Surrogates in dieser Sequenz zählen als je ein Codepunkt.
        Parameter
        beginIndex - der Index des ersten chardes Textbereichs.
        endIndex - der Index nach dem letzten chardes Textbereichs. Ergebnis Die Anzahl der Unicode-Codepunkte im angegebenen Textbereich. Ausnahme
        IndexOutOfBoundsException - 如果 beginIndex为负数,或者 endIndexgrößer als die Länge dieser Sequenz ist, oder beginIndex大于 endIndexist.
      • offsetByCodePoints

        public int offsetByCodePoints​(int index,
                                      int codePointOffset)
        Gibt den Index in dieser Sequenz zurück, der ausgehend vom gegebenenindex偏移codePointOffsetCodepunkte.index和codePointOffsetUnpaarige Surrogate im angegebenen Textbereich zählen als je ein Codepunkt.
        Parameter
        index- Der zu verschiebende Index
        codePointOffset- Der Offset in Codepunkten. Ergebnis Der Index in dieser Sequenz. Ausnahme
        IndexOutOfBoundsException - 如果 indexnegativ oder größer als die Länge dieser Sequenz ist, oder wenn codePointOffsetpositiv ist und die Teilsequenz ab indexweniger als indexCodepunkte hat, oder wenn codePointOffsetnegativ ist und codePointOffsetdie Teilsequenz vor indexweniger als der Absolutwert von indexCodepunkten hat. codePointOffsetgetChars
      • getChars

        public void getChars​(int srcBegin,
                             int srcEnd,
                             char[] dst,
                             int dstBegin)
        . Das erste zu kopierende Zeichen hat den Indexdst. Das letzte zu kopierende Zeichen liegt am IndexsrcBegin. Die Gesamtzahl der zu kopierenden Zeichen istsrcEnd-1. Die Zeichen werden in die TeilsequenzsrcEnd-srcBeginvondst的子dstund endet am IndexdstBeginParameter
           dstbegin + (srcEnd-srcBegin) - 1  
        - Kopieren beginnt bei diesem Offset.
        srcBegin- Kopieren endet bei diesem Offset.
        srcEnd- Das Array, in das die Daten kopiert werden.
        dst- Der Offset in
        dstBegin . Ausnahme dst- Wenn eine der folgenden Bedingungen erfüllt ist:
        IndexOutOfBoundsExceptionist negativ.
        • srcBegin是否定的
        • dstBegin是否定的
        • srcBegin.srcEnd参数。
        • srcEnd大于this.length() 。
        • dstBegin+srcEnd-srcBegin大于dst.length
      • setCharAt

        public void setCharAt​(int index,
                              char ch)
        Setzt das Zeichen am angegebenen Index aufch. Die Sequenz wird geändert, um eine neue Zeichenfolge mit demselben Inhalt wie die alte darzustellen, außer dass sie das Zeichen an Positionch的字符indexsein und kleiner als die Länge dieser Sequenz.

        0Parameter

        index
        index- Der Index des zu ändernden Zeichens.
        chch
        IndexOutOfBoundsException - 如果 index为负数或大于或等于 length()- wenn index negativ oder größer oder gleich length() ist.
      • substring

        public String substring​(int start)
        substringStringParameter
        beginIndex
        start- Der Startindex, einschließlich. Rückgabewert Der neue String. Ausnahme
        StringIndexOutOfBoundsException - 如果 start- wenn beginIndex kleiner als null oder größer als die Länge dieses Objekts ist.
      • subSequence

        public CharSequence subSequence​(int start,
                                        int end)
        Gibt eine neue Zeichenfolge zurück, die eine Teilsequenz dieser Sequenz ist. Der Aufruf dieser Methode in der Form

           sb.subSequence(begin,&nbsp;end) 
        verhält sich genau wie der Aufruf von
           sb.substring(begin,&nbsp;end) 
        Diese Methode wird bereitgestellt, damit diese Klasse das InterfaceCharSequenceimplementieren kann.
        Specified by:
        subSequence在接口 CharSequence
        Parameter
        startstart
        end- Der Startindex, einschließlich. end
        IndexOutOfBoundsException - 如果 startoder end- wenn start oder end negativ ist, wenn end大于 length() größer als start大于 end
      • substring

        public String substring​(int start,
                                int end)
        Gibt einen一个新的StringGibt einen neuen String zurück, der eine Teilsequenz der Zeichen enthält, die derzeit in dieser Sequenz enthalten sind. Die Teilzeichenfolge beginnt am angegebenenstartbeginIndexend - 1und erstreckt sich bis zum Zeichen am Index endIndex - 1.
        Parameter
        start- Startindex, einschließlich.
        end- Endindex, ausschließlich. Ergebnis Der neue String. Ausnahmen
        StringIndexOutOfBoundsException - 如果 startoder end为负数或大于 length() ist, oder wenn start大于 endist.
      • chars

        public IntStream chars()
        返回int的流,对此序列中的char-Werte dieser Sequenz null-erweitert. Zeichen, die einem surrogate code point zugeordnet sind, bleiben uninterpretiert. Der Stream wird beim Start der terminalen Stream-Operation an diese Sequenz gebunden (bei veränderbaren Sequenzen ist der Spliter late-binding). Wenn die Sequenz während der Operation geändert wird, ist das Ergebnis undefiniert.

        Specified by:
        chars在接口 CharSequence
        Ergebnis Ein IntStream mit den char-Werten dieser Sequenz Seit Version: 9
      • codePoints

        public IntStream codePoints()
        Gibt einen Stream der Codepunktwerte dieser Sequenz zurück. Surrogatpaare in der Sequenz werden wie bei Character.toCodePoint kombiniert, und das Ergebnis wird an den Stream übergeben. Alle anderen Codeeinheiten (normale BMP-Zeichen, ungepaarte Surrogate und undefinierte Codeeinheiten) werden null-erweitert zuint-Werten und an den Stream übergeben. Der Stream wird beim Start der terminalen Stream-Operation an diese Sequenz gebunden (bei veränderbaren Sequenzen ist der Spliter late-binding). Wenn die Sequenz während der Operation geändert wird, ist das Ergebnis undefiniert.

        Specified by:
        codePoints在接口 CharSequence
        Ergebnis Ein IntStream der Unicode-Codepunkte dieser Sequenz Seit Version: 9