Тип данных String (Visual Basic)
Содержит последовательности 16-разрядных (2-байтовых) точек кода без знака, которые варьируются в значении от 0 до 65535. Каждый код кода или символьный код представляет один символ Юникода. Строка может содержать от 0 до примерно двух миллиардов (2 ^ 31) символов Юникода.
Замечания
String
Используйте тип данных для хранения нескольких символов без затрат Char()
на управление массивом элементовChar
.
Значение String
по умолчанию равно ( Nothing
пустой ссылке). Обратите внимание, что это не то же самое, что и пустая строка (значение ""
).
Символы Юникода
Первые 128 кодовых точек (0–127) Юникода соответствуют буквам и символам на стандартной клавиатуре США. Эти первые 128 кодовых точек совпадают с заданными набором символов ASCII. Второй 128 кодовых точек (128–255) представляют специальные символы, такие как буквы алфавита на латиницах, акценты, символы валют и дроби. Юникод использует оставшиеся кодовые точки (256-65535) для широкого спектра символов. Это включает в себя текстовые символы по всему миру, диакритические и математические и технические символы.
Для определения классификации Юникода можно использовать такие методы, как IsDigitIsPunctuation и отдельный символ в переменной String
.
Требования к формату
Необходимо заключить String
литерал в кавычки (" "
). Если необходимо включить кавычки в качестве одного из символов в строке, используйте две смежные кавычки (""
). Это показано в следующем примере.
Dim j As String = "Joe said ""Hello"" to me."
Dim h As String = "Hello"
' The following messages all display the same thing:
' "Joe said "Hello" to me."
MsgBox(j)
MsgBox("Joe said " & """" & h & """" & " to me.")
MsgBox("Joe said """ & h & """ to me.")
Обратите внимание, что смежные кавычки, представляющие кавычки в строке, не зависят от кавычки, начинающихся и заканчивающих String
литерал.
Операции со строками
После назначения строки переменной String
эта строка неизменяема, что означает, что ее длина или содержимое изменить нельзя. При изменении строки в любом случае Visual Basic создает новую строку и отказывается от предыдущей. Затем String
переменная указывает на новую строку.
Содержимое переменной String
можно управлять с помощью различных строковых функций. В следующем примере показана Left функция
Dim S As String = "Database"
' The following statement sets S to a new string containing "Data".
S = Microsoft.VisualBasic.Left(S, 4)
Строка, созданная другим компонентом, может быть заполнена начальными или конечными пробелами. При получении такой строки можно использовать TrimLTrimфункции и RTrim функции для удаления этих пробелов.
Дополнительные сведения о манипуляциях строк см. в разделе "Строки".
Советы по программированию
Отрицательные числа. Помните, что символы, удерживаемые
String
без знака, не могут представлять отрицательные значения. В любом случае не следует использоватьString
для хранения числовых значений.Вопросы взаимодействия. Если вы взаимодействуете с компонентами, не написанными для платформа .NET Framework, например службы автоматизации или COM-объектов, помните, что строковые символы имеют другую ширину данных (8 битов) в других средах. Если вы передаете строковый аргумент 8-разрядных символов в такой компонент, объявите его как
Byte()
массивByte
элементов, а неString
в новом коде Visual Basic.Тип символов. Добавление символа
$
типа идентификатора к любому идентификатору заставляет его к типуString
данных.String
не имеет символа литерального типа. Однако компилятор обрабатывает литералы, заключенные в кавычки (" "
) какString
.Тип платформы. Соответствующий тип в платформа .NET Framework является классомSystem.String.