Le type String est une chaîne de caractères, comme par exemple “Salut les codeurs”, “Hello world”, “A”, “12”. Tous les caractères mis entre des guillemets. Et oui, le “12” mis entre guillemets n’est pas un Int mais une String. “” Est aussi une String, vide, mais c’est une String.

Nous pouvons la déclarer avec ou sans son type. Swift gèrera automatique son type. et avec ou sans valeur

var string1: String = “Bonjour”
var string2 = “Salut”
var string3: String 

Et si vous voulez faire une String sur plusieurs lignes? Dans ce cas il existe plusieurs façons: ajouter n pour un saut à la ligne ou le triple “.

var multi1 = “SalutnComment allez vous?”
var multi2 = “””
Bonjour,
– Quel temps fait’il aujoud’hui?
– Il fait très beau sur notre belle côte.
– “La vie est belle”
“””
print(multi1)
// Salut
// Comment allez vous?
print(multi2)
// Bonjour,
//
// – Quel temps fait’il aujoud’hui?
// – Il fait très beau sur notre belle côte.
// – “La vie est belle” 

Nous avons même pu ajouter des guillemets dans notre String multi lignes a 3 “.

Initialiser une String sans valeur peut être risqué, une string sans valeur (nil) causera une erreur et donc un crash de votre application. Mieux vaut initialiser une String vide ou avec un constructeur de classe.

var string1 = “”
var string2 = String() 

La mutabilité des Strings. On peut accoler une valeur à la valeur d’une String avec l’opérateur +=

var mutable = “Je suis une String”
mutable += “, et on peut accoler des valeurs”
print(mutable)
// Je suis une String, et on peut accoler des valeurs 

Pour modifier une String, nous pouvons utiliser la concaténation: c’est à dire ajouter une string à une autre avec l’opérateur +

var prenom = “Matthieu”
var nom = “Codabee”
var nomComplet = prenom + nom 

Là nous obtenons MatthieuCodabee. Les 2 Strings ont été accolées et nous n’avons pas dit à Swift d’ajouter un espace. Faisons plutôt ceci:

var nomComplet = prenom + “” + nom

L’interpolation de String. Pour intégrer une valeur String ou non dans une String que l’on insère grâce à (). La valeur à intégrer sera entre les parenthèses.

var age = 25
var name = “Bill”
var interpolation = “Salut je m’appelle (name) et j’ai (age) ans.”
print(interpolation)
//Salut je m’appelle Bill et j’ai 25 ans. 

Nous pouvons accéder aux caractères d’une String.

Passons à travers chaque caractère grâce à une boucle, les boucles seront vues un peu plus tard en détail.

var nomDeMonChat = “Athena”
for character in nomDeMonChat {
    print(character)
}
//A
//t
//h
//e
//n
//a 

Nous pouvons aussi compter le nombre de caractères dans une String en ajoutant .count apres le nom de la variable..

print(nomDeMonChat.count)
//6 

Il existe de nombreuses méthodes de la String que nous pouvons utiliser. par exemple.

Mettre en majuscule avec uppercase().

var car = “chevrolet”
print(car.uppercased())
//CHEVROLET 

Mettre en Minuscule, avec lowercased()

var dontScream = “C’EST PAS BIEN DE TOUT ECRIRE EN MAJUSCULE”
print(dontScream.lowercased())
// c’est pas bien de tout ecrire en majuscule 

Mettre une majuscule à chaque début de mot,  avec capitalized

var drink = “café sans sucre avec une pointe de lait.”
print(drink.capitalized)
// Café Sans Sucre Avec Une Pointe De Lait. 

Changer des caractères avec replacent occurrences(of: séquence à remplace, with: séquence qui va remplacer).

var sansE = “Je veux lire une phrase sans voir de e, et je vais mettre des a à la place.”

print(sansE.replacingOccurrences(of: “e”, with: “a”))
//Ja vaux lira una phrasa sans voir da a, at ja vais mattra das a à la placa.