Menu
Coddy logo textTech

La Méthode Contains

Fait partie de la section Fondamentaux du Journey Swift de Coddy. Leçon 76 sur 86.

Lorsque vous travaillez avec des tableaux, vous devez souvent vérifier si une valeur spécifique existe avant d’effectuer une action. Swift fournit la méthode contains() précisément à cette fin. Elle renvoie true si l’élément est trouvé, et false dans le cas contraire.

let fruits = ["apple", "banana", "orange"]

if fruits.contains("banana") {
    print("We have bananas!")
}
// Nous avons des bananes !

C’est bien plus propre que d’écrire une boucle pour parcourir le tableau manuellement. La méthode fonctionne avec n’importe quel type de tableau, qu’il contienne des chaînes, des nombres ou d’autres valeurs :

let numbers = [10, 20, 30, 40, 50]

print(numbers.contains(30))  // true
print(numbers.contains(99))  // false

Un cas d’utilisation courant consiste à valider la saisie utilisateur par rapport à une liste de valeurs autorisées :

let validOptions = ["yes", "no", "maybe"]
let userInput = "yes"

if validOptions.contains(userInput) {
    print("Valid choice")
} else {
    print("Invalid choice")
}
// Choix valide

La méthode contains() fonctionne également avec les chaînes pour vérifier si une sous-chaîne existe au sein d’une chaîne plus grande :

let message = "Hello, Swift!"
print(message.contains("Swift"))  // true
challenge icon

Défi

Facile

Vous recevrez deux lignes en entrée :

  1. Une liste de noms d’utilisateur autorisés, séparés par des virgules (par exemple, admin,user,guest,moderator)
  2. Un nom d’utilisateur à vérifier

Vérifiez si le nom d’utilisateur existe dans la liste des utilisateurs autorisés. Si c’est le cas, affichez Access granted. Sinon, affichez Access denied.

Étapes :

  1. Lisez la liste séparée par des virgules et divisez-la en un tableau de chaînes
  2. Lisez le nom d’utilisateur à vérifier
  3. Utilisez la méthode contains() pour déterminer si le nom d’utilisateur figure dans la liste des utilisateurs autorisés
  4. Affichez le message approprié en fonction du résultat

Astuce : Utilisez components(separatedBy:) pour diviser une chaîne en un tableau. Par exemple :

let text = "a,b,c"
let parts = text.components(separatedBy: ",")

Essayez vous-même

// Lire la liste des noms d'utilisateur autorisés séparés par des virgules
let allowedList = readLine()!

// Lire le nom d'utilisateur à vérifier
let username = readLine()!

// TODO: Écrivez votre code ci-dessous
// 1. Divisez allowedList en un tableau en utilisant components(separatedBy:)
// 2. Utilisez contains() pour vérifier si username est dans le tableau
// 3. Print "Access granted" or "Access denied" based on the result
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux

Entraînez-vous par vous-même : Playground Swift