Fizz Buzz 问题 无if语句实现

Fizz Buzz 问题 无if语句实现
原题:
给你一个整数n. 从 1 到 n 按照下面的规则打印每个数:

如果这个数被3整除,打印fizz.
如果这个数被5整除,打印buzz.
如果这个数能同时被3和5整除,打印fizz buzz.
如果这个数既不能被 3 整除也不能被 5 整除,打印数字本身。

解答:
只需要最开始时在字符串数组手动添加第一个元素(如“0”),这样再向数组添加1~n后,其数值大小就是所在字符串数组的下标,这样再操作就方便了。在对3、5、15的倍数操作结束后,再删去字符串数组的第一个元素(我这是“0”)即可。 代码如下:
public class Solution { public List fizzBuzz(int n) {
// write your code here
List list = new ArrayList();
list.add(String.valueOf(0));
int i;
for(i=1;i<=n;i++)
{
list.add(String.valueOf(i));
}
for(i=0;i<=n;i=i+3)
{
list.set(i,“fizz”);
}
for(i=0;i<=n;i=i+5)
{
list.set(i,“buzz”);
}
for(i=0;i<=n;i=i+15)
{
list.set(i,“fizz buzz”);
}
list.remove(0);
return list;
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值