Junior
Como se pode iterar sobre uma string na linguagem de programação Swift?
sobes.tech IA
Resposta da IA
Iterar sobre uma string em Swift pode ser feito de várias maneiras:
-
Por caracteres (Characters):
let myString = "Hello" for character in myString { // Processar carácter individual print(character) } -
Por escalares Unicode (Unicode Scalars):
let myString = "Hello" for scalar in myString.unicodeScalars { // Processar escalar Unicode print(scalar) } -
Por vistas UTF-8 (UTF8View):
let myString = "Hello" for utf8CodeUnit in myString.utf8 { // Processar unidade de código UTF-8 print(utf8CodeUnit) } -
Por vistas UTF-16 (UTF16View):
let myString = "Hello" for utf16CodeUnit in myString.utf16 { // Processar unidade de código UTF-16 print(utf16CodeUnit) } -
Por índices (através de
String.Index): Este método é mais complexo porque os caracteres podem ter comprimentos diferentes na memória.let myString = "Hello" var currentIndex = myString.startIndex while currentIndex != myString.endIndex { let character = myString[currentIndex] // Processar carácter pelo índice print(character) currentIndex = myString.index(after: currentIndex) }
A escolha do método depende da tarefa:
for character in myString: Iteração sobre clusters gráficos (caracteres) — o caso mais comum.unicodeScalarse vistas UTF: Usados para trabalhar com a representação de baixo nível da string em Unicode.- Iteração por índices: Necessária quando se deseja obter um carácter ou sub-string em um índice específico ou trabalhar com intervalos.