Строки и символы

Строка - это набор символов, таких как «hello world» или «моя средняя учетная запись». Строки Swift на самом деле относятся к типу String (Struct). Доступ к содержимому строковых типов осуществляется разными способами, включая сбор символов, получение подстрок по диапазону, количеству и т. Д. Изменчивость строки управляется путем выбора константы (let) или переменной (var) при объявлении типа.

→ Интерполяция строк: вставка констант, литералов, переменных и выражений в строковый тип называется интерполяцией строк.

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

Примечание. Тип Swift String связан с классом NSString, поэтому мы можем использовать все методы и API NSString на тип String. Swift String - это тип значения, поэтому, когда вы передаете, присваиваете строку другой переменной или константе, будет создана новая строка. Так что модификации происходят, когда вы выполняете. За кулисами метод оптимизации Swift заботится о функциональности копирования, когда это необходимо, для повышения производительности.

Строковый литерал - это последовательность (набор) символов, заключенная в двойные кавычки («,»).

Многострочные строковые литералы: если нам нужна строка из нескольких или более чем одной строки, мы создаем ее из последовательности символов, заключенных в три (3) двойные кавычки («» »).

Если мы не хотим, чтобы разрывы строк в строковом значении, но были необходимы в исходном коде для удобства чтения, мы можем использовать обратную косую черту (‘\’).

Специальные символы в строках:

\ 0 → нулевой символ

\\ → обратная косая черта

\ t → Горизонтальная вкладка

\ n → Новая строка

\ r → возврат каретки

\ ”→ двойные кавычки и \’ → одинарные кавычки

  • Произвольный скаляр Unicode, записанный в виде \ u {n} exmple: \ u {2665}

→ Использование кавычек в строковом литерале:

→ Инициализация строки:

Мы можем определить пустую строковую переменную для дальнейшего использования с новыми значениями или мы можем использовать метод инициализации String по умолчанию для создания экземпляра.

→ Работа с символами:

Мы можем создать персонажа, используя Тип символа. Мы также можем получить доступ ко всем символам в строке, используя цикл for-in. Мы также можем добавить тип char к существующему строковому типу.

Юникод: Юникод - это международный стандарт кодирования, обработки и представления текста в различных системах письма. Типы String и Character в Swift полностью соответствуют требованиям Unicode, поэтому он позволяет читать и писать из любого внешнего источника. За капотом Swift использует скаляры Unicode, которые представляют собой 21-битное число для каждого символа. Swift использует Расширенные кластеры графем, последовательность из одного или нескольких скаляров Unicode, которые создают один читаемый человеком символ. Например, a и a` создаются с использованием кластеров графемы, а в последнем символе он создается путем объединения последовательности кластеров. Его можно построить с помощью одного скаляра Unicode, поэтому, когда мы сравниваем эти два значения, swift дает правильное значение, поскольку он знает результат независимо от процедуры построения (то есть с помощью одного скаляра Unicode или последовательности скаляров)

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

Каждое значение String имеет связанный тип index, String.index,, который соответствует положению каждого символа в Струна. Мы можем использовать эти типы индексов для вставки / изменения / удаления строковых значений.

Мы также можем использовать методы hasSuffix (_ :) и hasPrefix (_ :), которые возвращают тип bool для работы со строковыми типами.

Если вам нравятся мои руководства, подпишитесь на меня на medium. Вы можете связаться со мной через учетные записи my-twitter или connectedIn.

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

Увидимся!!!

*******************************************************************