Comparaison de chaînes
Fait partie de la section Fundamentals du Journey Rust de Coddy — leçon 19 sur 75.
Il existe deux façons principales de créer des chaînes de caractères en Rust :
Méthode 1 : Littéraux de chaîne simples (str) :
let str1 = "hello";
let str2 = "hello";
let str3 = "Hello";Ce sont des chaînes simples et fixes qui sont intégrées à votre programme.
Méthode 2 : Chaînes complètes (String) :
let string1: String = "hello".to_string();
let string2: String = String::from("hello");
let string3 = "hello".to_owned();Celles-ci créent un type de chaîne plus flexible que vous pouvez modifier plus tard. Ces trois lignes font pratiquement la même chose, ce sont simplement des manières différentes de l'écrire.
Le :: dans String::from est la syntaxe de Rust pour appeler une fonction associée directement sur un type — considérez cela comme le moyen intégré propre à String pour créer une nouvelle valeur de chaîne.
Pour la plupart des comparaisons de chaînes, les deux types fonctionnent de la même manière :
let result1 = str1 == str2; // true
let result2 = str1 == str3; // false (sensible à la casse)
// Comparaison de String avec String
let result3 = string1 == string2; // true
// Vous pouvez même comparer String avec &str
let result4 = string1 == str1; // trueAide-mémoire
Il existe deux manières principales de créer des chaînes de caractères en Rust :
Littéraux de chaîne (str) :
let str1 = "hello";Chaînes complètes (String) :
let string1: String = "hello".to_string();
let string2: String = String::from("hello");
let string3 = "hello".to_owned();Les comparaisons de chaînes fonctionnent avec les deux types et sont sensibles à la casse :
let result1 = str1 == str2; // true
let result2 = string1 == str1; // true (String avec &str)Essayez vous-même
Cette leçon ne comprend pas de défi de code.
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fundamentals
4Opérateurs - Partie 1
Opérateurs arithmétiquesOpérateur moduloRaccourcis arithmétiquesOpérateurs de comparaisonComparaison de chaînes7Entrées/Sorties de base
Afficher dans la consoleLire la saisie utilisateurRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux5Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Récapitulatif - Logique simpleOpérateurs logiques, partie 33Variables - Partie 2
Déclaration de typeConventions de nommageInférence de typeRécapitulatif - Initialiser des variablesConversion de type9Boucles
Boucle For sur une sérieBoucle WhileBreakContinueBoucles imbriquéesÉtiquettes de boucleBoucle infinieRécapitulatif - Entrée dynamique12Bases des tableaux
Déclaration de tableauxTableau comme paramètreAccès aux élémentsModification de tableauxRécapitulatif - Affichage formaté d'un tableau15Opérations sur les chaînes
Méthodes de chaînesMacro format!Conversion de chaînesRécapitulatif - Format