Fondamenti di Rust

Rust Data Types: Integers, Floats, bool and char

Pick the right type for each value and convert between numbers with as.

  • Principiante
  • 2 min di lettura
  • 1 esempio eseguibile
Cosa imparerai
  • u8, i32, i64 and f64
  • bool and char
  • Converting with as
Value → type
30u8, a small whole number
-4.5f64, a decimal number
truebool
'A'char

Every value has a type known at compile time

Rust is statically typed: every value has a type that the compiler knows. Integers come in sizes such as u8 and i64, f64 holds decimal numbers, bool is true or false, and char is one Unicode character.

Rust never converts numbers silently, so age as f64 is needed before adding a float. Underscores in 1_000_000 only make the number easier to read. u8::MAX is the largest value a u8 can hold.

Punti chiave

  1. Integer types say their size: u8 holds 0 to 255.
  2. Rust never converts numbers silently: write age as f64.
  3. char is one Unicode character, written in single quotes.

Esempio Rust eseguibile

Rust
Esegui il codice →
main.rs
fn main() {
    let age: u8 = 30;
    let temperature: f64 = -4.5;
    let is_ready: bool = true;
    let grade: char = 'A';
    let big = 1_000_000i64;

    let total = age as f64 + temperature;
    println!("{age} {temperature} {is_ready} {grade} {big}");
    println!("total = {total}");
    println!("u8 max = {}", u8::MAX);
}
Crea un pulsante Run per questo esempio Risultato dell'esecuzione
30 -4.5 true A 1000000
total = 25.5
u8 max = 255

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.

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