Создание кортежа в Rust

Вы можете создать кортеж двумя способами:
  • Кортеж с указанием типа элементов
  • Кортеж без указания типа элементов
Рассмотрим оба варианта подробнее.

Кортеж с типом данных

При создании кортежа можно явно указывать типы хранимых значений. Вот пример:
Заметили?
  • Мы указали тип переменной (&str, u8, f32)
  • Затем присвоили ей конкретные значения ("Иван", 21, 3.56)
Пример программы с использованием подобного подхода:

Кортеж без указания типа данных

Можно обойтись и без указания типов. Компилятор автоматически определит их сам. Например:
Таким образом, мы создаем кортеж без явного задания типов.

Доступ к элементам кортежа

Каждый элемент имеет уникальный порядковый номер, называемый индексом. Индекс начинается с нуля. Для обращения к элементам используется синтаксис с точкой (.).
Например, вот простой кортеж:
Индексирование выглядит следующим образом:
  • random_tuple.0: доступ к первому элементу ("Привет")
  • random_tuple.1: доступ ко второму элементу (200)
  • random_tuple.2: доступ к третьему элементу (3.14)
Пример:
Помните: индексация начинается с нуля!

Изменяемые кортежи

По умолчанию кортежи неизменяемы. Однако можно сделать их изменяемыми, добавив ключевое слово mut перед объявлением переменной:
Теперь этот кортеж можно изменить:
Но помните: менять тип элемента нельзя!

Деструктуризация кортежа

Деструктуризация позволяет распаковать кортеж в отдельные переменные. Предположим, у нас есть следующий кортеж:
Мы можем произвести деструктуризацию следующим образом:
Теперь можно обращаться к переменным непосредственно, минуя индексы:
  • name вместо tuple.0
  • age вместо tuple.1
  • height вместо tuple.2
Пример:
Вот и всё! Теперь вы знакомы с основами работы с кортежами в Rust.