Swift:
Поиск длины строки
Как:
В Swift длину строки можно получить, обратившись к её свойству count. Прямо и без обиняков, давайте это сделаем:
let greeting = "Hello, World!"
print(greeting.count) // Вывод: 13Помните, что Swift рассматривает эмодзи как единичные символы, благодаря Unicode:
let wave = "👋"
print(wave.count) // Вывод: 1Глубже
Во времена Objective-C, определение длины строки не было таким прямолинейным — были методы length и lengthOfBytes(using:). Swift сделал это проще с помощью count.
Будьте внимательны к составным символам: визуально это единичные символы, состоящие из нескольких скаляров Unicode. count обрабатывает их с грацией.
Альтернативы? Конечно, вы могли бы перебирать строку в цикле, но это переизобретение колеса и менее эффективно.
Под капотом, count имеет сложность O(n), где ‘n’ — количество символов. Это потому, что String в Swift - это не коллекция Char, а последовательность кластеров графем, длина которых может варьироваться.
Смотрите также
- Документация Swift по строкам: Документация Swift по строкам
- Основы Unicode: Консорциум Unicode
- Погружение в производительность строк Swift: Производительность строк Swift