Menu
Coddy logo textTech

Méthodes de tableaux

Fait partie de la section Fundamentals du Journey Rust de Coddy. Leçon 61 sur 75.

Les tableaux regorgent de nombreuses méthodes (fonctionnalités). Pour accéder à une méthode, écrivez :

array.methodName(otherParameters)

Voici une liste des méthodes de base :

  • len() - retourne le nombre d'éléments dans le tableau
  • contains(value) - vérifie si le tableau contient une valeur spécifique
  • is_empty() - vérifie si le tableau est vide
  • reverse() - Inverse le tableau

Par exemple :

let numbers = [10, 20, 30, 40, 50];
let length = numbers.len();
println!("Length: {}", length);

numbers.reverse();
// [50, 40, 30, 20, 10]

Exemple de la méthode is_empty() :

let numbers: [i32; 0] = [];
let empty = numbers.is_empty();
println!("Is empty: {}", empty);

Cela affichera :

Is empty: true

Lorsque vous utilisez contains, vous devez passer une référence à la valeur que vous recherchez en utilisant &. Par exemple :

let numbers = [10, 20, 30, 40, 50];
let has_thirty = numbers.contains(&30);
println!("Contains 30: {}", has_thirty);
// Résultat : Contains 30: true
challenge icon

Défi

Facile

Créez une fonction nommée analyze_array qui reçoit en argument un tableau de chaînes de caractères de taille 5. La méthode doit effectuer les opérations suivantes :

  1. Vérifiez si le tableau est vide en utilisant la méthode is_empty() et affichez le résultat.
  2. Vérifiez si le tableau contient la chaîne "5" en utilisant la méthode contains() et affichez le résultat. N'oubliez pas d'utiliser String et non str : "5".to_string()
  3. Inversez le tableau et affichez-le

La sortie doit suivre exactement ce format :

Is empty: [true or false]
Contains 5: [true or false]
Reversed Elements:
[element1]
[element2]
...

Essayez vous-même

use std::io;
use std::convert::TryInto;

fn analyze_array(arr: &mut [String; 5]) {
    // Écrivez le code ici




    // Affichez les éléments ligne par ligne
    for element in arr.iter() {
        println!("{}", element);
    }
}

fn main() {
    let mut input_str_arr = String::new();
    io::stdin().read_line(&mut input_str_arr).unwrap();
    let mut arr: [String; 5] = input_str_arr.split(',').map(String::from).collect::<Vec<String>>().try_into().unwrap();
    analyze_array(&mut arr);
}
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 Fundamentals

Entraînez-vous par vous-même : Compilateur Rust en ligne