Sprache

StringBuffer Klasse

Definition

Eine threadsichere, veränderbare Abfolge von Zeichen.

[Android.Runtime.Register("java/lang/StringBuffer", DoNotGenerateAcw=true)]
public sealed class StringBuffer : Java.Lang.AbstractStringBuilder, IDisposable, Java.IO.ISerializable, Java.Lang.IComparable, System.Collections.Generic.IEnumerable<char>
[<Android.Runtime.Register("java/lang/StringBuffer", DoNotGenerateAcw=true)>]
type StringBuffer = class
    inherit AbstractStringBuilder
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IAppendable
    interface ICharSequence
    interface seq<char>
    interface IEnumerable
    interface IComparable
Vererbung
Attribute
Implementiert

Hinweise

Eine threadsichere, veränderbare Abfolge von Zeichen. Ein Zeichenfolgenpuffer ist wie ein StringZeichenfolgenpuffer, kann aber geändert werden. Zu jedem Zeitpunkt enthält sie eine bestimmte Abfolge von Zeichen, aber die Länge und der Inhalt der Sequenz können durch bestimmte Methodenaufrufe geändert werden.

Zeichenfolgenpuffer sind sicher für die Verwendung durch mehrere Threads. Die Methoden werden bei Bedarf synchronisiert, sodass sich alle Vorgänge für eine bestimmte Instanz so verhalten, als ob sie in einer seriellen Reihenfolge auftreten, die mit der Reihenfolge der Methodenaufrufe übereinstimmt, die von jedem der einzelnen beteiligten Threads ausgeführt werden.

Die Prinzipalvorgänge auf a StringBuffer sind die append und insert Methoden, die überladen sind, um Daten eines beliebigen Typs zu akzeptieren. Jedes effektiv konvertiert ein bestimmtes Datum in eine Zeichenfolge und fügt dann die Zeichen dieser Zeichenfolge an den Zeichenfolgenpuffer an oder fügt sie ein. Die append Methode fügt diese Zeichen immer am Ende des Puffers hinzu. Die insert Methode fügt die Zeichen an einem angegebenen Punkt hinzu.

Wenn beispielsweise auf ein Zeichenfolgenpufferobjekt verwiesen wird, dessen aktueller Inhalt lautetz, würde der Methodenaufruf "start" dazu führen, z.append("le") dass der Zeichenfolgenpuffer enthalten "startle"ist, während z.insert(4, "le") der Zeichenfolgenpuffer so geändert würde, dass er enthalten "starlet"soll.

Wenn sb im Allgemeinen auf eine Instanz einer StringBuffer, dann hat die sb.append(x) gleiche Wirkung wie sb.insert(sb.length(), x).

Wenn ein Vorgang mit einer Quellsequenz auftritt (z. B. anfügen oder aus einer Quellsequenz einfügen), synchronisiert diese Klasse nur den Zeichenfolgenpuffer, der den Vorgang ausführt, nicht für die Quelle. Beachten Sie, dass die StringBuffer gleichzeitige Verwendung von mehreren Threads sicher ist, wenn der Konstruktor oder der Konstruktor oder der appendinsert Vorgang eine Quellsequenz übergeben wird, die über Threads hinweg freigegeben wird, muss der aufrufende Code sicherstellen, dass der Vorgang eine konsistente und unveränderbare Ansicht der Quellsequenz für die Dauer des Vorgangs aufweist. Dies könnte durch den Aufrufer, der während des Aufrufs eine Sperre hält, durch Verwendung einer unveränderlichen Quellsequenz oder durch keine Freigabe der Quellsequenz über Threads hinweg zufrieden sein.

Jeder Zeichenfolgenpuffer verfügt über eine Kapazität. Solange die Länge der im Zeichenfolgenpuffer enthaltenen Zeichensequenz die Kapazität nicht überschreitet, ist es nicht erforderlich, ein neues internes Pufferarray zuzuweisen. Wenn der interne Puffer überläuft, wird er automatisch größer.

Sofern nicht anders angegeben, wird das Übergeben eines null Arguments an einen Konstruktor oder eine Methode in dieser Klasse dazu führen, dass ein NullPointerException Fehler ausgelöst wird.

Ab der Veröffentlichung von JDK 5 wurde diese Klasse durch eine entsprechende Klasse ergänzt, die für die Verwendung durch einen einzelnen Thread StringBuilderentwickelt wurde. Die StringBuilder Klasse sollte in der Regel vor dieser Klasse verwendet werden, da sie alle gleichen Vorgänge unterstützt, aber schneller ist, da sie keine Synchronisierung durchführt.

In 1.0 hinzugefügt.

Java Dokumentation für java.lang.StringBuffer.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

Name Beschreibung
StringBuffer()

Erstellt einen Zeichenfolgenpuffer ohne Zeichen und eine Anfangskapazität von 16 Zeichen.

StringBuffer(ICharSequence)

Erstellt einen Zeichenfolgenpuffer, der dieselben Zeichen wie die angegebene CharSequenceenthält.

StringBuffer(Int32)

Erstellt einen Zeichenfolgenpuffer ohne Zeichen darin und die angegebene Anfangskapazität.

StringBuffer(String)

Erstellt einen Zeichenfolgenpuffer, der für den Inhalt der angegebenen Zeichenfolge initialisiert wurde.

Eigenschaften

Name Beschreibung
Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
JniIdentityHashCode

Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist.

(Geerbt von Object)
JniManagedPeerState

Eine threadsichere, veränderbare Abfolge von Zeichen.

(Geerbt von JavaObject)
JniPeerMembers

Ruft die JNI-Metadaten ab, die zum Aufrufen von Mitgliedern dieses Java Peers verwendet werden.

PeerReference

Ruft den JNI-Objektverweis für diesen Java Peer ab.

(Geerbt von Object)
ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von AbstractStringBuilder)
ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von AbstractStringBuilder)

Methoden

Name Beschreibung
Append(Boolean)

Fügt die Zeichenfolgendarstellung des angegebenen booleschen Werts am Ende dieses StringBuffers hinzu.

Append(Char)

Fügt das angegebene Zeichen am Ende dieses Puffers hinzu.

Append(Char[], Int32, Int32)

Fügt die angegebene Abfolge von Zeichen am Ende dieses Puffers hinzu.

Append(Char[])

Fügt das Zeichenarray am Ende dieses Puffers hinzu.

Append(Double)

Fügt die Zeichenfolgendarstellung des angegebenen Double-Werts am Ende dieses StringBuffer-Werts hinzu.

Append(ICharSequence, Int32, Int32)

Hinzugefügt in 1.

Append(ICharSequence)

Fügt die angegebene CharSequence Sequenz an.

Append(Int32)

Fügt die Zeichenfolgendarstellung der angegebenen ganzen Zahl am Ende dieses StringBuffer hinzu.

Append(Int64)

Fügt die Zeichenfolgendarstellung der angegebenen Länge am Ende dieses StringBuffer hinzu.

Append(Object)

Fügt die Zeichenfolgendarstellung des angegebenen Objekts am Ende dieses StringBuffer-Objekts hinzu.

Append(Single)

Fügt die Zeichenfolgendarstellung des angegebenen Float-Werts am Ende dieses StringBuffer-Werts hinzu.

Append(String, Int32, Int32)

Fügt den angegebenen Wert an diese Zeichensequenz an.

Append(String)

Fügt die angegebene Zeichenfolge am Ende dieses Puffers hinzu.

Append(StringBuffer)

Fügt die angegebene StringBuffer Sequenz an.

AppendCodePoint(Int32)

Hinzugefügt in 1.

Capacity()

Gibt die Anzahl der Zeichen zurück, die ohne Zuwachs gehalten werden können.

CharAt(Int32)

Gibt das Zeichen bei index.

Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
CodePointAt(Int32)

Hinzugefügt in 1.

CodePointBefore(Int32)

Hinzugefügt in 1.

CodePointCount(Int32, Int32)

Hinzugefügt in 1.

CompareTo(StringBuffer)

Vergleicht zwei StringBuffer Instanzen lexikalisch.

Construct(JniObjectReference, JniObjectReferenceOptions)

Eine threadsichere, veränderbare Abfolge von Zeichen.

(Geerbt von JavaObject)
Delete(Int32, Int32)

Hinzugefügt in 1.

DeleteCharAt(Int32)

Hinzugefügt in 1.

Dispose()

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
Dispose(Boolean)

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
DisposeUnlessReferenced()

Eine threadsichere, veränderbare Abfolge von Zeichen.

(Geerbt von JavaObject)
EnsureCapacity(Int32)

Stellt sicher, dass dieses Objekt über eine Mindestkapazität verfügt, bevor der interne Puffer vergrößert werden muss.

Equals(Object)

Eine threadsichere, veränderbare Abfolge von Zeichen.

(Geerbt von JavaObject)
Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
GetChars(Int32, Int32, Char[], Int32)

Kopiert die angeforderte Abfolge von Zeichen an den char[] übergebenen Abbruch bei idx.

GetEnumerator()

Gibt einen Enumerator zurück, der die Zeichen in dieser Sequenz durchläuft.

GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
IndexOf(String, Int32)

Hinzugefügt in 1.

IndexOf(String)

Hinzugefügt in 1.

Insert(Int32, Boolean)

Fügt die Zeichenfolgendarstellung des angegebenen booleschen Werts in diesen Puffer am angegebenen Offset ein.

Insert(Int32, Char)

Fügt das Zeichen am angegebenen Offset in diesen Puffer ein.

Insert(Int32, Char[], Int32, Int32)

Hinzugefügt in 1.

Insert(Int32, Char[])

Fügt das Zeichenarray an dem angegebenen Offset in diesen Puffer ein.

Insert(Int32, Double)

Fügt die Zeichenfolgendarstellung des angegebenen Puffers an dem angegebenen Offset double ein.

Insert(Int32, ICharSequence, Int32, Int32)

Hinzugefügt in 1.

Insert(Int32, ICharSequence)

Hinzugefügt in 1.

Insert(Int32, Int32)

Fügt die Zeichenfolgendarstellung der angegebenen ganzzahligen Zahl in diesen Puffer am angegebenen Offset ein.

Insert(Int32, Int64)

Fügt die Zeichenfolgendarstellung der angegebenen Länge in diesen Puffer am angegebenen Offset ein.

Insert(Int32, Object)

Fügt die Zeichenfolgendarstellung des angegebenen Objekts in diesen Puffer am angegebenen Offset ein.

Insert(Int32, Single)

Fügt die Zeichenfolgendarstellung des angegebenen Float-Werts am angegebenen Offset in diesen Puffer ein.

Insert(Int32, String, Int32, Int32)

Hinzugefügt in 1.

Insert(Int32, String)

Fügt die Zeichenfolge an dem angegebenen Offset in diesen Puffer ein.

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind.

(Geerbt von Object)
LastIndexOf(String, Int32)

Hinzugefügt in 1.

LastIndexOf(String)

Hinzugefügt in 1.

Length()

Die aktuelle Länge.

Notify()

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
OffsetByCodePoints(Int32, Int32)

Hinzugefügt in 1.

Replace(Int32, Int32, String)

Hinzugefügt in 1.

Reverse()

Hinzugefügt in 1.

SetCharAt(Int32, Char)

Legt das Zeichen an der index.

SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
SetLength(Int32)

Legt die aktuelle Länge auf einen neuen Wert fest.

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Eine threadsichere, veränderbare Abfolge von Zeichen.

(Geerbt von JavaObject)
SubSequence(Int32, Int32)

Hinzugefügt in 1.

SubSequenceFormatted(Int32, Int32)

Hinzugefügt in 1.

Substring(Int32, Int32)

Hinzugefügt in 1.

Substring(Int32)

Hinzugefügt in 1.

ToArray<T>()

Erstellt ein verwaltetes Array aus diesem Java Arraywrapper.

(Geerbt von Object)
ToString()

Gibt die aktuelle Zeichenfolgendarstellung zurück.

TrimToSize()

Hinzugefügt in 1.

UnregisterFromRuntime()

Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf.

(Geerbt von Object)
Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><>

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

Name Beschreibung
IComparable.CompareTo(Object)

Vergleicht diesen Wert mit dem angegebenen Objekt für die Sortierung.

IEnumerable.GetEnumerator()

Gibt einen nicht generischen Enumerator für die Zeichen in dieser Sequenz zurück.

IJavaPeerable.Disposed()

Eine threadsichere, veränderbare Abfolge von Zeichen.

(Geerbt von JavaObject)
IJavaPeerable.Finalized()

Eine threadsichere, veränderbare Abfolge von Zeichen.

(Geerbt von JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Eine threadsichere, veränderbare Abfolge von Zeichen.

(Geerbt von JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Eine threadsichere, veränderbare Abfolge von Zeichen.

(Geerbt von JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Eine threadsichere, veränderbare Abfolge von Zeichen.

(Geerbt von JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Eine threadsichere, veränderbare Abfolge von Zeichen.

(Geerbt von JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Eine threadsichere, veränderbare Abfolge von Zeichen.

Erweiterungsmethoden

Name Beschreibung
Append(IAppendable, String, Int32, Int32)

Fügt den angegebenen Wert an diese Zeichensequenz an.

Append(IAppendable, String)

Fügt den angegebenen Wert an diese Zeichensequenz an.

GetJniTypeName(IJavaPeerable)

Ruft den JNI-Namen des Typs der Instanz selfab.

JavaAs<TResult>(IJavaPeerable)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

Eine threadsichere, veränderbare Abfolge von Zeichen.

SubSequence(ICharSequence, Int32, Int32)

Gibt die Untermenge des Zeichens innerhalb des angegebenen Bereichs zurück.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

Gilt für: