Menu
Coddy logo textTech

Iterowanie po wektorze

Część sekcji Logika i przepływ programu ścieżki Rust w Coddy. Lekcja 11 z 66.

Teraz, gdy wiesz już, jak tworzyć wektory i uzyskiwać dostęp do poszczególnych elementów, nauczmy się systematycznie przetwarzać każdy element wektora. Pętla for świetnie się do tego nadaje, ponieważ pozwala odwiedzać kolejno każdy element.

Oto podstawowa składnia iterowania po wektorze:

let names = vec!["Alice", "Bob", "Charlie"];

for name in &names {
    println!("Hello, {}!", name);
}

Zwróć uwagę na & przed names — tworzy ono referencję do wektora, dzięki czemu możesz odczytywać każdy element bez przejmowania własności samego wektora. Każda iteracja pętli daje dostęp do jednego elementu za pośrednictwem zmiennej pętli name.

Pętla for automatycznie sprawdza granice za Ciebie. W przeciwieństwie do ręcznego indeksowania nigdy przypadkowo nie spróbujesz uzyskać dostępu do elementu, który nie istnieje. Pętla odwiedzi dokładnie tyle elementów, ile zawiera wektor, dzięki czemu jest bezpieczna i wygodna.

Możesz użyć tego wzorca z wektorem dowolnego typu:

let scores = vec![85, 92, 78, 90];

for score in &scores {
    println!("Score: {}", score);
}

To podejście jest najczęstszym i najbardziej idiomatycznym sposobem przetwarzania wszystkich elementów wektorze, gdy trzeba odczytać ich wartości.

challenge icon

Wyzwanie

Łatwy
Napisz funkcję sum_all_elements, która przyjmuje wektor numbers i zwraca sumę wszystkich jego elementów.

Użyj pętli for, aby iterować po wektorze i obliczyć sumę wszystkich elementów.

Parametry:

  • numbers (Vec<i32>): Wektor liczb całkowitych do zsumowania

Zwraca: Sumę wszystkich elementów wektora (i32)

Spróbuj swoich sił

fn sum_all_elements(numbers: Vec<i32>) -> i32 {
    // Wpisz kod tutaj
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Logika i przepływ programu

Poćwicz samodzielnie: Kompilator Rust online