Chaîne rapide
Une chaîne Swift est une collection de caractères. Par exemple, « Hello, World ! » est une collection de valeurs de types de caractères ordonnés et son type de données est String.
Création d'une chaîne
Vous pouvez créer une chaîne en utilisant une chaîne littérale ou une instance de la classe String :
import Cocoa // 使用字符串字面量 var stringA = "Hello, World!" print( stringA ) // String 实例化 var stringB = String("Hello, World!") print( stringB )
La sortie du programme ci-dessus est : :
Hello, World! Hello, World!
Chaîne vide
Vous pouvez utiliser une chaîne littérale vide pour l'attribuer à une variable ou initialiser une instance de la classe String pour initialiser une chaîne vide. Nous pouvons utiliser l'attribut de chaîne isEmpty pour déterminer si la chaîne est vide :
import Cocoa // 使用字符串字面量创建空字符串 var stringA = "" if stringA.isEmpty { print( "stringA 是空的" ) } else { print( "stringA 不是空的" ) } // 实例化 String 类来创建空字符串 let stringB = String() if stringB.isEmpty { print( "stringB 是空的" ) } else { print( "stringB 不是空的" ) }
Le résultat de sortie de l'exécution du programme ci-dessus est :
stringA 是空的 stringB 是空的
String constant
Vous pouvez attribuer une chaîne à une variable ou une constante. Les variables sont modifiables, tandis que les constantes ne sont pas modifiables.
import Cocoa // stringA 可被修改 var stringA = "php中文网:" stringA += "http://www.php.cn" print( stringA ) // stringB 不能修改 let stringB = String("php中文网:") stringB += "http://www.php.cn" print( stringB )
La sortie d'exécution du programme ci-dessus signalera une erreur, pensant que la chaîneB est une constante et ne peut pas être modifiée :
error: left side of mutating operator isn't mutable: 'stringB' is a 'let' constant stringB += "http://www.php.cn"
Valeur insérée dans la chaîne
L'interpolation de chaînes est un moyen de construire de nouvelles chaînes pouvant contenir des constantes, des variables, des littéraux et des expressions. Chaque élément de la chaîne littérale que vous insérez est placé entre parenthèses préfixées par une barre oblique inverse :
import Cocoa var varA = 20 let constA = 100 var varC:Float = 20.0 var stringA = "\(varA) 乘于 \(constA) 等于 \(varC * 100)" print( stringA )
La sortie du programme ci-dessus est :
20 乘于 100 等于 2000.0
String Connection
les chaînes peuvent être connectées par + caractères. L'exemple est le suivant :
import Cocoa let constA = "php中文网:" let constB = "http://www.php.cn" var stringA = constA + constB print( stringA )
Le résultat de sortie de l'exécution du programme ci-dessus est :
php中文网:http://www.php.cn
caractères. Longueur de la chaîne
La longueur de la chaîne est calculée à l'aide de l'attribut String.characters.count L'exemple est le suivant :
import Cocoa var varA = "www.php.cn" print( "\(varA), 长度为 \(varA.characters.count)" )
Le résultat de sortie de l'exécution de ce qui précède. le programme est :
www.php.cn, 长度为 14
Comparaison de chaînes
Vous pouvez utiliser == pour comparer si deux chaînes sont égales :
import Cocoa var varA = "Hello, Swift!" var varB = "Hello, World!" if varA == varB { print( "\(varA) 与 \(varB) 是相等的" ) } else { print( "\(varA) 与 \(varB) 是不相等的" ) }
Le résultat de sortie de l'exécution du programme ci-dessus est :
Hello, Swift! 与 Hello, World! 是不相等的
Unicode String
Unicode est une norme internationale pour l'encodage de texte. Le type String de Swift est basé sur Unicode. Vous pouvez boucler et itérer les encodages UTF-8 et UTF-16 dans la chaîne. L'exemple est le suivant :
import Cocoa var unicodeString = "php中文网" print("UTF-8 编码: ") for code in unicodeString.utf8 { print("\(code) ") } print("\n") print("UTF-16 编码: ") for code in unicodeString.utf16 { print("\(code) ") }
Le résultat de l'exécution du programme ci-dessus est :
UTF-8 编码: 232 143 156 233 184 159 230 149 153 231 168 139 UTF-16 编码: 33756 40479 25945 31243
Fonctions et opérations de chaîne Symbole
Swift prend en charge les fonctions et opérateurs de chaîne suivants :
Numéro de série | Fonction/Opérateur et description |
---|---|
1 | isEmpty Détermine si la chaîne est vide et renvoie une valeur booléenne |
2 | hasPrefix(prefix: String) Vérifiez si la chaîne a un préfixe spécifique |
3 | hasSuffix(suffix: String) Vérifie si une chaîne a un suffixe spécifique. |
4 | Int(String) Convertir le numéro de chaîne en entier.
Exemple : let myString: String = "256" let myInt: Int? = Int(myString) |
5 | String.characters.count Calculer la longueur de la chaîne |
6 | utf8 Vous pouvez accéder à l'encodage UTF-8 d'une String en itérant sur sa propriété utf8 |
7 | utf16 Vous pouvez accéder à l'UTF-16 d'une chaîne en itérant sur son utf8 encodage de propriété |
8 | unicodeScalars auquel vous pouvez accéder en itérant sur la propriété unicodeScalars de la valeur String Son encodage scalaire Unicode. |
9 | + concatène deux chaînes , et renvoie une nouvelle chaîne |
10 | += concatène les deux côtés du chaîne d'opérateur et attribuez la nouvelle chaîne à la variable d'opérateur à gauche |
11 | == Déterminer si deux chaînes sont égales |
12 | < Pour comparer deux chaînes, comparez les lettres des deux chaînes une par une. |
13 | != Compare deux chaînes pour voir si elles sont égales. |