Массив, вектор, кортеж

Массив

Массив — переменная, которая может хранить несколько значений. Список допустимых значений указывается в квадратных скобках [].

fn main() {

    // создание массива
    let arr = [1, 2, 3];

    // вывод элементов массива
    for a in &arr {
        println!("Массив: {}", a);
    }

}

В результате будет выведено следующее:

Массив: 0
Массив: 1
Массив: 2

В массиве можно создавать элементы только одного типа. То есть нельзя создавать строку и числа в одном массиве.

Вектор

Вектор, это расширяемая версия массива. Создаются векторы через метод vec!.

struct Worker {
    name: String,
}

fn main() {

    // создание вектора
    let workers = vec![
        Worker { name: "Мария".to_string() },
        Worker { name: "Дмитрий".to_string() },
        Worker { name: "Дарья".to_string() },
        Worker { name: "Михаил".to_string() },
    ];

    // вывод элементов из вектора
    for w in &workers {
        println!("Сотрудник: {}", w.name);
    }

}

В результате будет выведено следующее:

Сотрудник: Мария
Сотрудник: Дмитрий 
Сотрудник: Дарья 
Сотрудник: Михаил

При необходимости можно вывести только указанный элемент вектора через следующий код:

println!("Сотрудник: {}", workers[0].name); // Сотрудник: Мария

Кортеж

Кортеж похож на массив, только может хранить значения разных типов. Элементы кортежа указываются между круглыми скобками ().

fn main() {

    // создание кортежа
    let tuple = (2, "Rust");

    // вывод элементов кортежа
    println!("Число: {}", tuple.0);
    println!("Строка: {}", tuple.1);

}

В результате будет выведено следующее:

Число: 2
Строка: Rust