题目描述
- 等级:
简单
写一个程序,输出从 1 到 n 数字的字符串表示。
-
如果 n 是3的倍数,输出“Fizz”;
-
如果 n 是5的倍数,输出“Buzz”;
-
如果 n 同时是3和5的倍数,输出 “FizzBuzz”。
示例:
n = 15,
返回:
[
"1",
"2",
"Fizz",
"4",
"Buzz",
"Fizz",
"7",
"8",
"Fizz",
"Buzz",
"11",
"Fizz",
"13",
"14",
"FizzBuzz"
]
思路
对于字符串的考察,对于这道题直接用最简单的思路处理了,如果碰到复杂的问题,需要用Map存储n与Fizz或Buzz的映射,之后进行字符串拼接。
答案
class Solution {
public List<String> fizzBuzz(int n) {
List<String> res = new ArrayList<>();
for(int i=1;i<=n;i++){
String str = "";
if((i%3==0)&&(i%5==0)){
str= "FizzBuzz";
}else if(i%3==0){
str= "Fizz";
}else if(i%5==0){
str= "Buzz";
}else{
str = String.valueOf(i);
}
res.add(str);
}
return res;
}
}
结果
来源:oschina
链接:https://my.oschina.net/u/4024767/blog/3136679