Fondamenti di Rust

Rust Tuples and Arrays

Group a few values of different types in a tuple, and a fixed number of same-typed values in an array.

  • Principiante
  • 3 min di lettura
  • 1 esempio eseguibile
Cosa imparerai
  • Tuples and .0 .1
  • Arrays with [T; N]
  • Returning two values
scores: [i32; 5]
720
951
582
883
644
Indexes start at 0. The highest score is at index 1.

Fixed-size groups of values

A tuple groups a few values that can have different types. An array holds a fixed number of values of one type, and its length is part of its type.

[i32; 5] is an array of five i32 values. min_max returns two results at once as a tuple, and let (lowest, highest) unpacks them. Tuple fields are read by position with .0 and .1.

Punti chiave

  1. An array's length is part of its type: [i32; 5].
  2. A tuple can mix types: (3, -2.5).
  3. let (a, b) = pair; unpacks a tuple.

Esempio Rust eseguibile

Rust
Esegui il codice →
main.rs
fn min_max(values: [i32; 5]) -> (i32, i32) {
    let mut min = values[0];
    let mut max = values[0];
    for value in values {
        if value < min {
            min = value;
        }
        if value > max {
            max = value;
        }
    }
    (min, max)
}

fn main() {
    let scores = [72, 95, 58, 88, 64];
    let (lowest, highest) = min_max(scores);

    println!("first: {}, count: {}", scores[0], scores.len());
    println!("lowest: {lowest}, highest: {highest}");

    let point = (3, -2.5);
    println!("x = {}, y = {}", point.0, point.1);
}
Crea un pulsante Run per questo esempio Risultato dell'esecuzione
first: 72, count: 5
lowest: 58, highest: 95
x = 3, y = -2.5

Esercitati

Apri l'esempio nel compilatore online, cambia un valore o aggiungi una riga e prova a prevedere l'output prima di eseguirlo. Poi rompi il codice di proposito e leggi il messaggio del compilatore.

Hai finito questa lezione?

Segnala come imparata per tenere traccia dei tuoi progressi.

Prossima: Vectors →

Esercitati con una sfida

Usa ciò che questa lezione spiega per risolvere un problema reale. Ogni sfida gira nel browser, con test immediati e una revisione dell'IA.

Tutte le sfide