Έλεγχος Ροής
Συνθήκες, βρόχοι και εκφράσεις match.
Έλεγχος Ροής
Το Sounio παρέχει γνώριμες δομές ελέγχου ροής: if, while, for και match.
if / else
Το if είναι έκφραση, οπότε μπορείτε να δεσμεύσετε το αποτέλεσμα:
let max = if a > b { a } else { b }
while
fn main() with IO {
var count = 0
while count < 3 {
println(count)
count = count + 1
}
}
for-in
Διαστήματα:
fn main() with IO {
// Exclusive range: 0..5
var sum = 0
for i in 0..5 {
sum = sum + i
}
// Inclusive range: 0..=5
var sum_inclusive = 0
for i in 0..=5 {
sum_inclusive = sum_inclusive + i
}
}
Πίνακες και Vec<T>:
fn main() with IO {
let arr = [10, 20, 30]
for x in arr {
println(x)
}
let vec: Vec<i32> = [1, 2, 3, 4]
for x in vec {
println(x)
}
}
break και continue:
fn main() with IO {
for i in 0..10 {
if i % 2 == 0 {
continue
}
if i >= 7 {
break
}
println(i)
}
}
match
fn main() with IO {
let x = 1
let y = match x {
0 => 10
1 => 20
_ => 30
}
println(y)
}
Σημείωση spec: match guards, range patterns και πιο πλούσια enum patterns είναι μέρος της κατεύθυνσης της γλώσσας. Προτιμήστε το πιο απλό σχήμα
matchόταν γράφετε portable παραδείγματα.