给你一个整数 n ,找出从 1 到 n 各个整数的 Fizz Buzz 表示,并用字符串数组 answer(下标从 1 开始)返回结果,其中:
answer[i] == "FizzBuzz" 如果 i 同时是 3 和 5 的倍数。
answer[i] == "Fizz" 如果 i 是 3 的倍数。
answer[i] == "Buzz" 如果 i 是 5 的倍数。
answer[i] == i (以字符串形式)如果上述条件全不满足
代码如下:
class Solution {
public List<String> fizzBuzz(int n) {
/*
ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,
我们可以添加或删除元素。ArrayList 继承了 AbstractList ,并实现了 List 接口。
*/
ArrayList<String> result = new ArrayList<String>();//初始化
int step = 1;//让每组数都从1开始遍历,不会整除的数进入循环将会直接输出
do
{
if(step%15 == 0)//同时可以整除3和5
result.add("FizzBuzz");//结果输出
else if (step%3 == 0)
result.add("Fizz");
else if(step%5 == 0)
result.add("Buzz");
else
result.add(step+"");//3和5都不整除,直接输出该数
}while(step++ < n);//一直遍历,直到=n截止,退出循环
return result;//返回结果值
}
}
运行效果:
(此题是力扣题库)