Sobes.tech
Junior

Comment peut-on itérer sur une chaîne dans le langage de programmation Swift?

sobes.tech IA

Réponse de l'IA

Itérer sur une chaîne en Swift peut se faire de plusieurs manières :

  1. Par caractères (Characters) :

    let myString = "Hello"
    for character in myString {
        // Traitement du caractère individuel
        print(character)
    }
    
  2. Par scalaires Unicode (Unicode Scalars) :

    let myString = "Hello"
    for scalar in myString.unicodeScalars {
        // Traitement du scalaire Unicode
        print(scalar)
    }
    
  3. Par vues UTF-8 (UTF8View) :

    let myString = "Hello"
    for utf8CodeUnit in myString.utf8 {
        // Traitement de l’unité de code UTF-8
        print(utf8CodeUnit)
    }
    
  4. Par vues UTF-16 (UTF16View) :

    let myString = "Hello"
    for utf16CodeUnit in myString.utf16 {
        // Traitement de l’unité de code UTF-16
        print(utf16CodeUnit)
    }
    
  5. Par indices (via String.Index) : Cette méthode est plus complexe car les caractères peuvent avoir des longueurs différentes en mémoire.

    let myString = "Hello"
    var currentIndex = myString.startIndex
    while currentIndex != myString.endIndex {
        let character = myString[currentIndex]
        // Traitement du caractère par index
        print(character)
        currentIndex = myString.index(after: currentIndex)
    }
    

Le choix de la méthode dépend de la tâche :

  • for character in myString : Itération sur les grappes graphiques (caractères) — le cas le plus fréquent.
  • unicodeScalars et vues UTF : Utilisées pour travailler avec la représentation de bas niveau de la chaîne en Unicode.
  • Itération par indices : Nécessaire lorsque vous souhaitez obtenir un caractère ou une sous-chaîne à un index précis ou travailler avec des plages.