0Pricing
Learn Rust Coding · Leçon

Créer et remplir des vecteurs

Construisez des Vec et ajoutez des éléments.

Créer et remplir des vecteurs est une leçon Learn Rust Coding gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Learn Rust Coding, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Learn Rust Coding comprend 4 leçons au total.

Qu’est-ce qu’un vecteur ?

Un vecteur est une liste extensible de valeurs, toutes du même type. Contrairement à un tableau de taille fixe, un vecteur peut rétrécir ou grandir pendant l’exécution de votre programme.

En Rust, le type s’écrit Vec<T>, où T est le type des éléments qu’il contient, comme Vec<i32> pour des entiers.

Un vecteur vide

Vous pouvez créer un vecteur vide avec Vec::new(). Comme il ne contient encore aucune valeur, Rust ne peut pas deviner le type des éléments ; vous devez donc généralement l’indiquer.

Ici, nous indiquons à Rust que ce vecteur contiendra des entiers i32.

fn main() {
    let v: Vec<i32> = Vec::new();
    println!("len = {}", v.len());
}

La macro vec!

La manière la plus rapide de créer un vecteur avec des valeurs initiales consiste à utiliser la macro vec!. Énumérez les valeurs entre crochets.

Rust examine les valeurs pour déduire le type des éléments, il n’est donc pas nécessaire de l’indiquer ici.

fn main() {
    let nums = vec![10, 20, 30];
    println!("{:?}", nums);
}

Afficher un vecteur

Pour afficher un vecteur entier, utilisez le formateur de débogage {:?}, et non le formateur normal {}. Le format de débogage affiche les valeurs entre crochets.

Utilisez {:#?} pour obtenir une présentation élégante sur plusieurs lignes lorsqu’un vecteur est volumineux.

fn main() {
    let names = vec!["Ann", "Bo", "Cy"];
    println!("{:?}", names);
}

Ajouter des valeurs

Pour ajouter une valeur à la fin d’un vecteur, appelez push. Le vecteur doit être déclaré mut, car cette opération le modifie.

Chaque appel à push ajoute un élément et augmente la longueur de un.

fn main() {
    let mut v = Vec::new();
    v.push(1);
    v.push(2);
    v.push(3);
    println!("{:?}", v);
}

Le type vient du premier push

Lorsque vous commencez avec Vec::new() sans indiquer de type, Rust attend le premier appel à push pour connaître le type des éléments.

Ci-dessous, l’ajout de 3.5 indique à Rust qu’il s’agit d’un Vec<f64>. Toutes les valeurs suivantes doivent être du même type.

fn main() {
    let mut prices = Vec::new();
    prices.push(3.5);
    prices.push(9.0);
    println!("{:?}", prices);
}

Remplir avec des répétitions

La macro vec! peut répéter une valeur. Écrivez vec![value; count] pour créer un vecteur contenant cette valeur répétée count fois.

C’est pratique pour initialiser une liste de zéros ou de valeurs par défaut.

fn main() {
    let zeros = vec![0; 5];
    println!("{:?}", zeros);
}

Remplir dans une boucle

Vous pouvez remplir un vecteur en ajoutant des valeurs à l’intérieur d’une boucle. Ici, nous ajoutons les carrés des nombres de 1 à 4.

Commencer avec un vecteur vide et ajouter les valeurs au fur et à mesure est un schéma courant lorsque celles-ci sont calculées.

fn main() {
    let mut squares = Vec::new();
    for n in 1..=4 {
        squares.push(n * n);
    }
    println!("{:?}", squares);
}

Capacité et longueur

La longueur correspond au nombre d’éléments que contient actuellement un vecteur. La capacité correspond à l’espace qu’il a réservé avant de devoir augmenter la mémoire qui lui est allouée.

Si vous connaissez approximativement le nombre d’éléments que vous ajouterez, Vec::with_capacity(n) réserve l’espace à l’avance et évite les réallocations répétées.

fn main() {
    let mut v = Vec::with_capacity(10);
    v.push(1);
    println!("len {}, cap {}", v.len(), v.capacity());
}

Depuis un tableau

Vous pouvez convertir un tableau en vecteur. Une méthode simple consiste à utiliser .to_vec(), qui copie les éléments du tableau dans un nouveau vecteur dont vous possédez la propriété.

C’est utile lorsque vous commencez avec des données fixes, mais que vous devez ensuite les faire évoluer.

fn main() {
    let arr = [1, 2, 3];
    let v = arr.to_vec();
    println!("{:?}", v);
}

Vérifier si le vecteur est vide

Utilisez is_empty() pour vérifier qu’un vecteur ne contient aucun élément. La méthode renvoie un booléen, ce qui est plus clair que de comparer la longueur à zéro.

C’est une bonne garde avant de lire le premier élément.

fn main() {
    let v: Vec<i32> = Vec::new();
    if v.is_empty() {
        println!("nothing here yet");
    }
}

Vérification rapide

Vérifiez votre compréhension de la création et du remplissage des vecteurs.

Récapitulatif

Vous avez appris à créer des vecteurs avec Vec::new() et la macro vec!, puis à les remplir avec push, des répétitions, des boucles et to_vec().

Vous avez également découvert la différence entre longueur et capacité, ainsi que la manière de vérifier si un vecteur est vide. Vous allez maintenant lire les valeurs d’un vecteur et parcourir celui-ci.

Questions Fréquemment Posées

La leçon « Créer et remplir des vecteurs » est-elle gratuite ?

Oui — le texte complet de « Créer et remplir des vecteurs » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Learn Rust Coding, passe à CoddyKit PRO. Le cours Learn Rust Coding comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Créer et remplir des vecteurs » ?

Construisez des Vec et ajoutez des éléments. Tu pratiques Learn Rust Coding avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Learn Rust Coding ?

Aucune expérience préalable n'est requise. Learn Rust Coding sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « Créer et remplir des vecteurs » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Learn Rust Coding ?

Oui. Chaque leçon Learn Rust Coding inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Créer et remplir des vecteurs
  2. Indexer et parcourir
  3. Agrandir et réduire
  4. Vecteurs de structures
← Retour à Learn Rust Coding