Junior
Ako môžete iterovať cez reťazec v programovacom jazyku Swift?
sobes.tech AI
Odpoveď od AI
Iterovanie cez reťazec v Swiftu je možné vykonať viacerými spôsobmi:
-
Podľa znakov (Characters):
let myString = "Hello" for character in myString { // Spracovanie jednotlivého znaku print(character) } -
Podľa Unicode skalárnych hodnôt (Unicode Scalars):
let myString = "Hello" for scalar in myString.unicodeScalars { // Spracovanie Unicode skalára print(scalar) } -
Podľa UTF-8 pohľadov (UTF8View):
let myString = "Hello" for utf8CodeUnit in myString.utf8 { // Spracovanie UTF-8 kódu print(utf8CodeUnit) } -
Podľa UTF-16 pohľadov (UTF16View):
let myString = "Hello" for utf16CodeUnit in myString.utf16 { // Spracovanie UTF-16 kódu print(utf16CodeUnit) } -
Podľa indexov (
String.Index): Tento spôsob je zložitejší, pretože znaky môžu mať rôznu dĺžku v pamäti.let myString = "Hello" var currentIndex = myString.startIndex while currentIndex != myString.endIndex { let character = myString[currentIndex] // Spracovanie znaku pomocou indexu print(character) currentIndex = myString.index(after: currentIndex) }
Výber metódy závisí od úlohy:
for character in myString: Iterácia cez grafické klastre (znaky) - najčastejší prípad.unicodeScalarsa UTF pohľady: Používajú sa na prácu s nízkoúrovňovým zobrazením reťazca v Unicode.- Iterácia pomocou indexov: Je potrebná, keď chcete získať znak alebo podreťazec na konkrétnom indexe alebo pracovať s rozsahmi.