fn main() { let mut x = 0; // If Bedingungen sind sehr ähnlich zu anderen Sprachen if x == 0 { println!("x ist Null"); } else if x < 0 { println!("x ist negativ"); } else { println!("x ist positiv"); } // While Schleifen wie in Java, nur ohne Klammen // Klammern dürfen dabei stehen, das würde aber ein Warning ausgeben while x < 10 { println!("x ist kleiner als 10"); x += 1; } // For Loops sind etwas wilder, die klassische Java for-Loop (for (int i = 0; i < 10; i++) {}) sehe so aus for i in 0..10 { // Das ist quasi der Ternary Operator aus Python let gerade = if i % 2 == 0 { true } else { false }; // Semicolon wichtig, da das eine Variableninitialisierung ist println!("{:?}", gerade); } // Loop läuft solange, bis ein break irgendwo erscheint, oder endlos loop { println!("Endlosschleifeeeee..."); break; // nicht mehr endlos } for tag in 1..8 { // Switch Case werden realisiert durch Pattern Matching match tag { 1 => println!("Montag :O"), 2 => println!("Dienstag >:("), 3 => println!("Mittwoch :("), 4 => println!("Donnerstag :|"), 5 => println!("Freitag :)"), 6 => println!("Samstag :D"), 7 => println!("Sonntag :D"), _ => println!("Tag unbekannt"), // Default Fall } } let punktzahl = 50; // Durch match kann ein Wert einer Variable zugeordnet werden, je nachdem, was die Lage ist let note = match punktzahl { 0..50 => "Ungenügend", 50..67 => "Ausreichend", 67..80 => "Befriedigend", 80..92 => "Gut", 92..101 => "Sehr gut", _ => "Unbekannte Punktzahl", }; // Hier ist ein Semikolon nötig, da es eine Variableninitialisierung ist println!("{note}"); }