我正在编写代码以输出“墙上的99瓶啤酒”程序。我正在尝试说“墙上有1瓶啤酒”。而不是瓶子。我不确定我的代码有什么问题。任何帮助,将不胜感激。
public class BeerOnTheWall {
public static void handleCountdown() {
int amount = 99;
int newamt = amount - 1;
String bottles = " bottles";
while(amount != 0) {
if(amount == 1) {
bottles.replace("bottles", "bottle");
}
System.out.println(amount + bottles +" of beer on the wall, "
+ amount + bottles +" of beer! You take one down, pass it around, "
+ newamt + " bottles of beer on the wall!");
amount--;
newamt--;
}
System.out.println("Whew! Done!");
}
public static void main(String args[]) {
handleCountdown();
}
}
我有一个if语句,它假定检查int的“数量”是否等于1,然后将“瓶”替换为“瓶”。
有什么帮助吗?
谢谢。
最佳答案
String#replace
返回修改后的String
,因此您需要替换:
if(amount == 1) {
bottles.replace("bottles", "bottle");
}
与:
if(amount == 1) {
bottles = bottles.replace("bottles", "bottle");
}
请参见the documentation。