Menu
Coddy logo textTech

Array-Methoden

Teil des Abschnitts Fundamentals der Rust-Journey von Coddy — Lektion 61 von 75.

Arrays verfügen über viele Methoden (Funktionalitäten). Um auf eine Methode zuzugreifen, schreibe:

array.methodName(otherParameters)

Hier ist eine Liste der grundlegenden Methoden:

  • len() - gibt die Anzahl der Elemente im Array zurück
  • contains(value) - prüft, ob das Array einen bestimmten Wert enthält
  • is_empty() - prüft, ob das Array leer ist
  • reverse() - kehrt das Array um

Zum Beispiel:

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

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

Beispiel für die is_empty()-Methode:

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

Dies wird Folgendes ausgeben:

Is empty: true

Bei der Verwendung von contains müssen Sie eine Referenz auf den gesuchten Wert mit & übergeben. Zum Beispiel:

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

Aufgabe

Einfach

Erstellen Sie eine Funktion namens analyze_array, die ein Array von Strings der Größe 5 als Argument erhält. Die Methode sollte die folgenden Operationen ausführen:

  1. Prüfen Sie mit der Methode is_empty(), ob das Array leer ist, und geben Sie das Ergebnis aus.
  2. Prüfen Sie mit der Methode contains(), ob das Array den String “5” enthält, und geben Sie das Ergebnis aus. Denken Sie daran, String und nicht str zu verwenden: “5”.to_string()
  3. Kehren Sie die Reihenfolge des Arrays um und geben Sie es aus

Die Ausgabe sollte genau diesem Format folgen:

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

Probier es selbst

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

fn analyze_array(arr: &mut [String; 5]) {
    // Code hier schreiben




    // Elemente Zeile für Zeile ausgeben
    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 iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Fundamentals