Menu
Coddy logo textTech

format!-Makro

Teil des Abschnitts Fundamentals der Rust-Journey von Coddy — Lektion 70 von 75.

In Rust ermöglicht das format!-Makro die Kombination von Text mit Variablen auf eine lesbare und anpassbare Weise. Dieses Makro ähnelt println!, aber anstatt die Ausgabe auf der Konsole auszugeben, gibt es einen formatierten String zurück, den Sie in einer Variablen speichern oder in anderen Operationen verwenden können.

Die einfachste Syntax verwendet unbenannte Platzhalter {}:

let name = "Alice";
let age = 30;

let formatted = format!("Name: {}, Age: {}", name, age);
println!("{}", formatted);
// Ausgabe: Name: Alice, Age: 30

Sie können Variablennamen direkt in den Platzhaltern verwenden:

let name = "Bob";
let age = 25;

let formatted = format!("Name: {name}, Age: {age}");
println!("{}", formatted);
// Ausgabe: Name: Bob, Age: 25

Du kannst die Position von Argumenten mithilfe von Zahlen angeben:

let formatted = format!("{1} {0} {2}", "first", "second", "third");
println!("{}", formatted);
// Ausgabe: second first third

Sie können steuern, wie Werte mithilfe von Formatbezeichnern formatiert werden:

// Zahlenformatierung
let pi = 3.1415926;
let formatted_float = format!("{:.2}", pi);
// "3.14"

// Auffüllen mit Nullen
let padded = format!("{:0>5}", "123");
// "00123"
challenge icon

Aufgabe

Einfach

Erstellen Sie ein Programm, das aus einem Namen und einem Geburtsjahr einen Geheimcode nach genau diesen Regeln generiert:

  • Nimmt den ersten Buchstaben des Namens und wandelt ihn in einen Großbuchstaben um
  • Kehrt die Ziffern des Jahres um
  • Umschließt den ersten Buchstaben mit "⭐" Symbolen
  • Fügt ein "-" zwischen dem umschlossenen Buchstaben und dem umgekehrten Jahr ein

Um einen String umzukehren, verwenden Sie den folgenden Code: .to_string().chars().rev().collect::<String>()

Spickzettel

Das format!-Makro kombiniert Text mit Variablen und gibt einen formatierten String zurück, der in einer Variablen gespeichert werden kann.

Grundlegende Syntax mit unbenannten Platzhaltern:

let name = "Alice";
let age = 30;
let formatted = format!("Name: {}, Age: {}", name, age);

Verwendung von Variablennamen direkt in Platzhaltern:

let name = "Bob";
let age = 25;
let formatted = format!("Name: {name}, Age: {age}");

Angeben von Argumentpositionen mit Zahlen:

let formatted = format!("{1} {0} {2}", "first", "second", "third");
// Output: "second first third"

Formatbezeichner zur Steuerung der Ausgabe:

// Number formatting
let pi = 3.1415926;
let formatted_float = format!("{:.2}", pi); // "3.14"

// Padding with zeros
let padded = format!("{:0>5}", "123"); // "00123"

Um einen String umzukehren: .to_string().chars().rev().collect::<String>()

Probier es selbst

use std::io;


fn main() {
    let mut input_name = String::new();
    let mut input_year = String::new();
    io::stdin().read_line(&mut input_name).unwrap();
    io::stdin().read_line(&mut input_year).unwrap();
    let name = input_name.trim();
    let year: i32 = input_year.trim().parse().unwrap();

    // Schreibe deinen Code unten
    
    
    let secret_code =
    println!("{}", secret_code);
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Fundamentals