Вывод типов
Часть раздела Fundamentals путешествия по Rust на Coddy — урок 12 из 75.
В Rust вывод типов позволяет компилятору автоматически определять тип переменной на основе её значения и использования. Это означает, что вам часто не нужно явно указывать тип при объявлении переменной, что делает ваш код более лаконичным и удобным для чтения.
Например:
let x = 5;
// Rust выводит, что x — это i32
let y = 3.14;
// Rust выводит, что y — это f64
let message = "Hello, world!";
// Rust выводит, что message — это &str (строка)
let is_true = true;
// Rust выводит, что is_true — это boolВ этих примерах мы не указывали типы x, y, message и is_true. Компилятор Rust автоматически вывел их типы на основе присвоенных им значений.
Вывод типов не только удобен, но и помогает предотвращать ошибки. Компилятор проверяет, как используются переменные, и гарантирует, что выведенные типы согласованы во всем коде. Если возникает конфликт, компилятор выдаст ошибку.
Задание
НовичокНапишите программу на Rust, которая демонстрирует вывод типов. Объявите и инициализируйте следующие переменные без явного указания типов:
- Переменная с именем
quantityсо значением10. - Переменная с именем
priceсо значением99.99. - Переменная с именем
messageсо значением"Coddy is awesome!". - Переменная с именем
is_availableсо значениемtrue.
После объявления этих переменных используйте println!() для вывода их значений в консоль. Обратите внимание, как Rust выводит типы этих переменных на основе их значений.
Шпаргалка
Вывод типов в Rust позволяет компилятору автоматически определять типы переменных на основе их значений, что во многих случаях избавляет от необходимости явного указания типов.
let x = 5; // Rust выводит i32
let y = 3.14; // Rust выводит f64
let message = "Hello, world!"; // Rust выводит &str
let is_true = true; // Rust выводит boolКомпилятор проверяет использование переменных для обеспечения согласованности типов и выдает ошибки при возникновении конфликтов.
Попробуйте сами
fn main() {
// Объявите переменные здесь
// Вывод значений
println!("Quantity: {}", quantity);
println!("Price: {}", price);
println!("Message: {}", message);
println!("Is available: {}", is_available);
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Fundamentals
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияАрифметические сокращенияОператоры сравненияСравнение строк7Основы ввода-вывода
Вывод в консольЧтение ввода пользователяПовторение — До 120Повторение — True или False5Операторы. Часть 2
Логические операторы. Часть 1Логические операторы. Часть 2Повторение — простая логикаЛогические операторы. Часть 38Приложение-калькулятор
Приветственное сообщениеПолучение чисел3Переменные. Часть 2
Объявление типаСоглашения об именованииВывод типовПовторение: инициализация переменныхПриведение типов9Циклы
Цикл For по последовательностиЦикл WhileОператор BreakОператор ContinueВложенные циклыМетки цикловБесконечный циклПовторение — Динамический ввод