StringBuffer Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Потокобезопасная, изменяемая последовательность символов.
[Android.Runtime.Register("java/lang/StringBuffer", DoNotGenerateAcw=true)]
public sealed class StringBuffer : Java.Lang.AbstractStringBuilder, IDisposable, Java.Interop.IJavaPeerable, 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")
метода приведет к тому, что буфер строки будет содержаться, в то время как z.insert(4, "le")
изменит буфер строки на содержащийся"startle"
"starlet"
.
Как правило, если sb относится к экземпляру объекта StringBuffer
, то sb.append(x)
имеет тот же эффект, что sb.insert(sb.length(), x)
и .
Когда операция выполняется с использованием исходной последовательности (например, добавления или вставки из исходной последовательности), этот класс синхронизируется только в строковом буфере, выполняющем операцию, а не в источнике. Обратите внимание, что в то время StringBuffer
как он должен быть безопасным для одновременного использования из нескольких потоков, если конструктор или insert
append
операция передается исходная последовательность, которая совместно используется в потоках, вызывающий код должен гарантировать, что операция имеет согласованное и неизменное представление исходной последовательности в течение длительности операции. Это может быть удовлетворено вызывающим методом, удерживая блокировку во время вызова операции, используя неизменяемую исходную последовательность или не предоставляя общий доступ к исходной последовательности между потоками.
Каждый буфер строки имеет емкость. Если длина последовательности символов, содержащейся в строковом буфере, не превышает емкость, не требуется выделить новый внутренний буферный массив. Если внутренний буфер переполнен, он автоматически становится больше.
Если иное не указано, передача аргумента null
конструктору или методу в этом классе приведет NullPointerException
к возникновению ошибки.
По состоянию на выпуск JDK 5 этот класс был дополнен эквивалентным классом, предназначенным для использования одним потоком. StringBuilder
Класс StringBuilder
, как правило, следует использовать в предпочтениях к этому, так как он поддерживает все те же операции, но он быстрее, так как он не выполняет синхронизацию.
Добавлено в версии 1.0.
Документация по Java для java.lang.StringBuffer
.
Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.
Конструкторы
StringBuffer() |
Создает строковый буфер без символов в нем и начальную емкость 16 символов. |
StringBuffer(ICharSequence) |
Создает строковый буфер, содержащий те же символы, что и указанные |
StringBuffer(Int32) |
Создает строковый буфер без символов в нем и указанную начальную емкость. |
StringBuffer(String) |
Создает буфер строки, инициализированный содержимому указанной строки. |
Свойства
Class |
Возвращает класс среды выполнения этого |
Handle |
Дескриптор базового экземпляра Android. (Унаследовано от Object) |
JniIdentityHashCode |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
JniPeerMembers |
Потокобезопасная, изменяемая последовательность символов. |
PeerReference |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
ThresholdClass |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от AbstractStringBuilder) |
ThresholdType |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от AbstractStringBuilder) |
Методы
Append(Boolean) |
Добавляет строковое представление указанного логического элемента в конец этого StringBuffer. |
Append(Char) |
Добавляет указанный символ в конец этого буфера. |
Append(Char[]) |
Добавляет массив символов в конец этого буфера. |
Append(Char[], Int32, Int32) |
Добавляет указанную последовательность символов в конец этого буфера. |
Append(Double) |
Добавляет строковое представление указанного двойника в конец этого StringBuffer. |
Append(ICharSequence) |
Добавляет указанный |
Append(ICharSequence, Int32, Int32) |
Добавлено в 1. |
Append(Int32) |
Добавляет строковое представление указанного целого числа в конец этого StringBuffer. |
Append(Int64) |
Добавляет строковое представление указанного длинного в конец этого StringBuffer. |
Append(Object) |
Добавляет строковое представление указанного объекта в конец этого StringBuffer. |
Append(Single) |
Добавляет строковое представление указанного float в конец этого StringBuffer. |
Append(String) |
Добавляет указанную строку в конец этого буфера. |
Append(String, Int32, Int32) |
Потокобезопасная, изменяемая последовательность символов. |
Append(StringBuffer) |
Добавляет указанный |
AppendCodePoint(Int32) |
Добавлено в 1. |
Capacity() |
Возвращает количество символов, которые можно хранить, не увеличиваясь. |
CharAt(Int32) |
Возвращает символ в |
Clone() |
Создает и возвращает копию этого объекта. (Унаследовано от Object) |
CodePointAt(Int32) |
Добавлено в 1. |
CodePointBefore(Int32) |
Добавлено в 1. |
CodePointCount(Int32, Int32) |
Добавлено в 1. |
CompareTo(StringBuffer) |
Сравнивает два |
Delete(Int32, Int32) |
Добавлено в 1. |
DeleteCharAt(Int32) |
Добавлено в 1. |
Dispose() |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
Dispose(Boolean) |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
EnsureCapacity(Int32) |
Убедитесь, что этот объект имеет минимальную емкость, прежде чем требуется увеличить внутренний буфер. |
Equals(Object) |
Указывает, равен ли другой объект этому объекту. (Унаследовано от Object) |
GetChars(Int32, Int32, Char[], Int32) |
Копирует запрошенную последовательность символов в переданный |
GetEnumerator() |
Потокобезопасная, изменяемая последовательность символов. |
GetHashCode() |
Возвращает значение хэш-кода для объекта. (Унаследовано от Object) |
IndexOf(String) |
Добавлено в 1. |
IndexOf(String, Int32) |
Добавлено в 1. |
Insert(Int32, Boolean) |
Вставляет строковое представление указанного логического значения в этот буфер с указанным смещением. |
Insert(Int32, Char) |
Вставляет символ в этот буфер по указанному смещение. |
Insert(Int32, Char[]) |
Вставляет массив символов в этот буфер по указанному смещение. |
Insert(Int32, Char[], Int32, Int32) |
Добавлено в 1. |
Insert(Int32, Double) |
Вставляет строковое представление указанного в этот буфер двойного значения в указанное смещение. |
Insert(Int32, ICharSequence) |
Добавлено в 1. |
Insert(Int32, ICharSequence, Int32, Int32) |
Добавлено в 1. |
Insert(Int32, Int32) |
Вставляет строковое представление указанного целого числа в этот буфер с указанным смещением. |
Insert(Int32, Int64) |
Вставляет строковое представление указанного длинного в этот буфер с указанным смещением. |
Insert(Int32, Object) |
Вставляет строковое представление указанного объекта в этот буфер с указанным смещением. |
Insert(Int32, Single) |
Вставляет строковое представление указанного float в этот буфер с указанным смещением. |
Insert(Int32, String) |
Вставляет строку в этот буфер по указанному смещение. |
Insert(Int32, String, Int32, Int32) |
Добавлено в 1. |
JavaFinalize() |
Вызывается сборщиком мусора в объекте, когда сборка мусора определяет, что больше ссылок на объект нет. (Унаследовано от Object) |
LastIndexOf(String) |
Добавлено в 1. |
LastIndexOf(String, Int32) |
Добавлено в 1. |
Length() |
Текущая длина. |
Notify() |
Пробуждение одного потока, ожидающего монитора этого объекта. (Унаследовано от Object) |
NotifyAll() |
Просыпает все потоки, ожидающие монитора этого объекта. (Унаследовано от Object) |
OffsetByCodePoints(Int32, Int32) |
Добавлено в 1. |
Replace(Int32, Int32, String) |
Добавлено в 1. |
Reverse() |
Добавлено в 1. |
SetCharAt(Int32, Char) |
Задает символ в поле |
SetHandle(IntPtr, JniHandleOwnership) |
Задает свойство Handle. (Унаследовано от Object) |
SetLength(Int32) |
Задает текущую длину новым значением. |
SubSequence(Int32, Int32) |
Добавлено в 1. |
SubSequenceFormatted(Int32, Int32) |
Добавлено в 1. |
Substring(Int32) |
Добавлено в 1. |
Substring(Int32, Int32) |
Добавлено в 1. |
ToArray<T>() |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
ToString() |
Возвращает текущее представление строки. |
TrimToSize() |
Добавлено в 1. |
UnregisterFromRuntime() |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
Wait() |
Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>помощи уведомления</em> или <эм>прерванного</em>. (Унаследовано от Object) |
Wait(Int64) |
Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени. (Унаследовано от Object) |
Wait(Int64, Int32) |
Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени. (Унаследовано от Object) |
Явные реализации интерфейса
IComparable.CompareTo(Object) |
Потокобезопасная, изменяемая последовательность символов. |
IEnumerable.GetEnumerator() |
Потокобезопасная, изменяемая последовательность символов. |
IJavaPeerable.Disposed() |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
IJavaPeerable.Finalized() |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
IJavaPeerable.JniManagedPeerState |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Потокобезопасная, изменяемая последовательность символов. (Унаследовано от Object) |
Методы расширения
JavaCast<TResult>(IJavaObject) |
Выполняет преобразование типа, проверяемого средой выполнения Android. |
JavaCast<TResult>(IJavaObject) |
Потокобезопасная, изменяемая последовательность символов. |
GetJniTypeName(IJavaPeerable) |
Потокобезопасная, изменяемая последовательность символов. |
Append(IAppendable, String) |
Потокобезопасная, изменяемая последовательность символов. |
Append(IAppendable, String, Int32, Int32) |
Потокобезопасная, изменяемая последовательность символов. |
SubSequence(ICharSequence, Int32, Int32) |
Потокобезопасная, изменяемая последовательность символов. |