leetcode-412 Fizz Buzz


412. Fizz Buzz

难度: 简单



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
impl Solution {
pub fn fizz_buzz(n: i32) -> Vec<String> {
let mut i = 1;
let mut rs = vec![];
while i <= n {
if i % 15 == 0 {
rs.push("FizzBuzz".parse().unwrap());
} else if i % 3 == 0 {
rs.push("Fizz".parse().unwrap());

} else if i % 5 == 0 {
rs.push("Buzz".parse().unwrap());
} else {
println!("{}", i);
rs.push(i.to_string());
}
i += 1;
}
rs
}
}

可参考 通过例子学 Rust 中文版-while 循环


定义一个空Vec: let mut rs = vec![];


1
2
3
let mut rs  = vec![];

println!("向量为:{:?}",rs);

输出: 向量为:[]


如果是

1
2
3
let mut rs  = vec![String::new()];

println!("向量为:{:?}",rs);

则输出: 向量为:[“”]

即第一个元素是空字符串


&str转String


"fizzbuzz".parse().unwrap()


整型转String


666.to_string()


将同类型的某元素压入Vec


rs.push("fizz".parse().unwrap());