Rust handles Unicode automatically by using String (UTF-8) and &str slices, which are always valid UTF-8 and iterate by Unicode scalar values rather than bytes. Use the chars() method to iterate over individual characters safely, or is_char_boundary() to split strings at valid character boundaries.
fn main() {
let s = "Hello, δΈη";
for c in s.chars() {
println!("Char: {}", c);
}
}