Язык

StringBuffer Класс

Определение

Потокобезопасная, изменяемая последовательность символов.

[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
Наследование
Атрибуты
Реализации

Комментарии

Потокобезопасная, изменяемая последовательность символов. Строковый буфер похож на Stringбуфер, но может быть изменен. В любой момент времени он содержит определенную последовательность символов, но длину и содержимое последовательности можно изменить с помощью определенных вызовов методов.

Буферы строк безопасны для использования несколькими потоками. Методы синхронизируются, если это необходимо, чтобы все операции в любом конкретном экземпляре выполнялись так, как будто они выполняются в определенном последовательном порядке, который соответствует порядку вызовов методов, выполняемых каждым из отдельных потоков.

Основные операции с a StringBuffer — это append и insert методы, которые перегружены таким образом, чтобы принимать данные любого типа. Каждый из них фактически преобразует заданный datum в строку, а затем добавляет или вставляет символы этой строки в буфер строки. Метод append всегда добавляет эти символы в конце буфера; insert метод добавляет символы в указанную точку.

Например, если z относится к объекту буфера строки, текущий содержимое которого имеется"start", вызов z.append("le") метода приведет к тому, что буфер строки будет содержаться, в то время как "startle" изменит буфер строки на содержащийсяz.insert(4, "le")"starlet".

Как правило, если sb относится к экземпляру объекта StringBuffer, то sb.append(x) имеет тот же эффект, что sb.insert(sb.length(), x)и .

Когда операция выполняется с использованием исходной последовательности (например, добавления или вставки из исходной последовательности), этот класс синхронизируется только в строковом буфере, выполняющем операцию, а не в источнике. Обратите внимание, что в то время StringBuffer как он должен быть безопасным для одновременного использования из нескольких потоков, если конструктор или appendinsert операция передается исходная последовательность, которая совместно используется в потоках, вызывающий код должен убедиться, что операция имеет согласованное и неизменное представление исходной последовательности в течение длительности операции. Это может быть удовлетворено вызывающим методом, удерживая блокировку во время вызова операции, используя неизменяемую исходную последовательность или не предоставляя общий доступ к исходной последовательности между потоками.

Каждый буфер строки имеет емкость. Если длина последовательности символов, содержащейся в строковом буфере, не превышает емкость, не требуется выделить новый внутренний буферный массив. Если внутренний буфер переполнен, он автоматически становится больше.

Если иное не указано, передача аргумента null конструктору или методу в этом классе приведет NullPointerException к возникновению ошибки.

По состоянию на выпуск JDK 5 этот класс был дополнен эквивалентным классом, предназначенным для использования одним потоком. StringBuilder Класс StringBuilder , как правило, следует использовать в предпочтениях к этому, так как он поддерживает все те же операции, но он быстрее, так как он не выполняет синхронизацию.

Добавлено в версии 1.0.

Java документации по java.lang.StringBuffer.

Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".

Конструкторы

Имя. Описание
StringBuffer()

Создает строковый буфер без символов в нем и начальную емкость 16 символов.

StringBuffer(ICharSequence)

Создает строковый буфер, содержащий те же символы, что и указанные CharSequence.

StringBuffer(Int32)

Создает строковый буфер без символов в нем и указанную начальную емкость.

StringBuffer(String)

Создает буфер строки, инициализированный содержимому указанной строки.

Свойства

Имя. Описание
Class

Возвращает класс среды выполнения этого Objectобъекта.

(Унаследовано от Object)
Handle

Дескриптор базового экземпляра Android.

(Унаследовано от Object)
JniIdentityHashCode

Возвращает хэш-код удостоверения, назначенный этому Java одноранговой среде выполнения взаимодействия.

(Унаследовано от Object)
JniManagedPeerState

Потокобезопасная, изменяемая последовательность символов.

(Унаследовано от JavaObject)
JniPeerMembers

Возвращает метаданные JNI, используемые для вызова элементов этого Java однорангового узла.

PeerReference

Возвращает ссылку на объект JNI для этого Java однорангового узла.

(Унаследовано от Object)
ThresholdClass

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

(Унаследовано от AbstractStringBuilder)
ThresholdType

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

(Унаследовано от AbstractStringBuilder)

Методы

Имя. Описание
Append(Boolean)

Добавляет строковое представление указанного логического элемента в конец этого StringBuffer.

Append(Char)

Добавляет указанный символ в конец этого буфера.

Append(Char[], Int32, Int32)

Добавляет указанную последовательность символов в конец этого буфера.

Append(Char[])

Добавляет массив символов в конец этого буфера.

Append(Double)

Добавляет строковое представление указанного двойника в конец этого StringBuffer.

Append(ICharSequence, Int32, Int32)

Добавлено в 1.

Append(ICharSequence)

Добавляет указанный CharSequence в эту последовательность.

Append(Int32)

Добавляет строковое представление указанного целого числа в конец этого StringBuffer.

Append(Int64)

Добавляет строковое представление указанного длинного в конец этого StringBuffer.

Append(Object)

Добавляет строковое представление указанного объекта в конец этого StringBuffer.

Append(Single)

Добавляет строковое представление указанного float в конец этого StringBuffer.

Append(String, Int32, Int32)

Добавляет указанное значение в эту последовательность символов.

Append(String)

Добавляет указанную строку в конец этого буфера.

Append(StringBuffer)

Добавляет указанный StringBuffer в эту последовательность.

AppendCodePoint(Int32)

Добавлено в 1.

Capacity()

Возвращает количество символов, которые можно хранить, не увеличиваясь.

CharAt(Int32)

Возвращает символ в index.

Clone()

Создает и возвращает копию этого объекта.

(Унаследовано от Object)
CodePointAt(Int32)

Добавлено в 1.

CodePointBefore(Int32)

Добавлено в 1.

CodePointCount(Int32, Int32)

Добавлено в 1.

CompareTo(StringBuffer)

Сравнивает два StringBuffer экземпляра лексографически.

Construct(JniObjectReference, JniObjectReferenceOptions)

Потокобезопасная, изменяемая последовательность символов.

(Унаследовано от JavaObject)
Delete(Int32, Int32)

Добавлено в 1.

DeleteCharAt(Int32)

Добавлено в 1.

Dispose()

Освобождает ресурсы, удерживаемые этим Java одноранговым узлом.

(Унаследовано от Object)
Dispose(Boolean)

Освобождает ресурсы, удерживаемые этим Java одноранговым узлом.

(Унаследовано от Object)
DisposeUnlessReferenced()

Потокобезопасная, изменяемая последовательность символов.

(Унаследовано от JavaObject)
EnsureCapacity(Int32)

Убедитесь, что этот объект имеет минимальную емкость, прежде чем требуется увеличить внутренний буфер.

Equals(Object)

Потокобезопасная, изменяемая последовательность символов.

(Унаследовано от JavaObject)
Equals(Object)

Указывает, равен ли другой объект этому объекту.

(Унаследовано от Object)
GetChars(Int32, Int32, Char[], Int32)

Копирует запрошенную последовательность символов в переданный char[] начиная с idx.

GetEnumerator()

Возвращает перечислитель, который выполняет итерацию символов в этой последовательности.

GetHashCode()

Возвращает хэш-значение кода для объекта.

(Унаследовано от Object)
IndexOf(String, Int32)

Добавлено в 1.

IndexOf(String)

Добавлено в 1.

Insert(Int32, Boolean)

Вставляет строковое представление указанного логического значения в этот буфер с указанным смещением.

Insert(Int32, Char)

Вставляет символ в этот буфер по указанному смещение.

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

Добавлено в 1.

Insert(Int32, Char[])

Вставляет массив символов в этот буфер по указанному смещение.

Insert(Int32, Double)

Вставляет строковое представление указанного в этот буфер двойного значения в указанное смещение.

Insert(Int32, ICharSequence, Int32, Int32)

Добавлено в 1.

Insert(Int32, ICharSequence)

Добавлено в 1.

Insert(Int32, Int32)

Вставляет строковое представление указанного целого числа в этот буфер с указанным смещением.

Insert(Int32, Int64)

Вставляет строковое представление указанного длинного в этот буфер с указанным смещением.

Insert(Int32, Object)

Вставляет строковое представление указанного объекта в этот буфер с указанным смещением.

Insert(Int32, Single)

Вставляет строковое представление указанного float в этот буфер с указанным смещением.

Insert(Int32, String, Int32, Int32)

Добавлено в 1.

Insert(Int32, String)

Вставляет строку в этот буфер по указанному смещение.

JavaFinalize()
Устаревшие.

Вызывается сборщиком мусора в объекте, когда сборка мусора определяет, что больше ссылок на объект нет.

(Унаследовано от Object)
LastIndexOf(String, Int32)

Добавлено в 1.

LastIndexOf(String)

Добавлено в 1.

Length()

Текущая длина.

Notify()

Просыпается один поток, ожидающий монитора этого объекта.

(Унаследовано от Object)
NotifyAll()

Просыпает все потоки, ожидающие монитора этого объекта.

(Унаследовано от Object)
OffsetByCodePoints(Int32, Int32)

Добавлено в 1.

Repeat(ICharSequence, Int32)

Добавляет копии указанной cs CharSequence cs в эту последовательность.

Repeat(Int32, Int32)

Повторяет количество копий строкового представления аргумента CodePoint в этой последовательности.

Repeat(String, Int32)

Потокобезопасная, изменяемая последовательность символов.

Replace(Int32, Int32, String)

Добавлено в 1.

Reverse()

Добавлено в 1.

SetCharAt(Int32, Char)

Задает символ в поле index.

SetHandle(IntPtr, JniHandleOwnership)

Задает свойство Handle.

(Унаследовано от Object)
SetLength(Int32)

Задает текущую длину новым значением.

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Потокобезопасная, изменяемая последовательность символов.

(Унаследовано от JavaObject)
SubSequence(Int32, Int32)

Добавлено в 1.

SubSequenceFormatted(Int32, Int32)

Добавлено в 1.

Substring(Int32, Int32)

Добавлено в 1.

Substring(Int32)

Добавлено в 1.

ToArray<T>()

Создает управляемый массив из этого Java оболочки массива.

(Унаследовано от Object)
ToString()

Возвращает текущее представление строки.

TrimToSize()

Добавлено в 1.

UnregisterFromRuntime()

Отменяет регистрацию этого Java однорангового узла из среды выполнения взаимодействия.

(Унаследовано от Object)
Wait()

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, путем <><уведомления/>em или <эм>прерванного</em.>

(Унаследовано от Object)
Wait(Int64, Int32)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прерваны< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)
Wait(Int64)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прерваны< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)

Явные реализации интерфейса

Имя. Описание
IComparable.CompareTo(Object)

Сравнивает это значение с указанным объектом для упорядочивания.

IEnumerable.GetEnumerator()

Возвращает не универсальный перечислитель для символов в этой последовательности.

IJavaPeerable.Disposed()

Потокобезопасная, изменяемая последовательность символов.

(Унаследовано от JavaObject)
IJavaPeerable.Finalized()

Потокобезопасная, изменяемая последовательность символов.

(Унаследовано от JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Потокобезопасная, изменяемая последовательность символов.

(Унаследовано от JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Потокобезопасная, изменяемая последовательность символов.

(Унаследовано от JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Потокобезопасная, изменяемая последовательность символов.

(Унаследовано от JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Потокобезопасная, изменяемая последовательность символов.

(Унаследовано от JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Потокобезопасная, изменяемая последовательность символов.

Методы расширения

Имя. Описание
Append(IAppendable, String, Int32, Int32)

Добавляет указанное значение в эту последовательность символов.

Append(IAppendable, String)

Добавляет указанное значение в эту последовательность символов.

GetJniTypeName(IJavaPeerable)

Возвращает имя JNI типа экземпляра self.

JavaAs<TResult>(IJavaPeerable)

Попробуйте принуждать к типуself, проверяяTResult, является ли приведение допустимым на стороне Java.

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверяемого средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Потокобезопасная, изменяемая последовательность символов.

SubSequence(ICharSequence, Int32, Int32)

Возвращает подсезону символов в указанном диапазоне.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Попробуйте принуждать к типуself, проверяяTResult, является ли приведение допустимым на стороне Java.

Применяется к