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érieFonction/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.