【发布时间】:2013-11-28 19:40:11
【问题描述】:
我必须显示v10000 到v10500 范围内的所有服务器名称。
下面是我尝试过的代码,但有时它显示为零。
String template = "v10";
int count = 0;
while (count < 501) {
String number;
if (count < 100) {
number = "00" + Integer.toString(count);
} else if(count < 10) {
number = "0" + Integer.toString(count);
} else {
number = Integer.toString(count);
}
String server = template + number;
System.out.println(server);
count++;
}
但是当我向老板展示这个解决方案时,他只是笑着说:
我可以做得更好。
如何更改我的代码以使其正常工作?我是 Java 新手。
【问题讨论】:
-
切换你的 if else/if 左右。
count < 10位于顶部,count < 100位于底部 -
你需要一个更有帮助的老板。
-
总是首先检查最低值,否则它将永远无法进行该测试(9 小于 100 且小于 10,因此您将进入小于 100。我现在将代码更改为小于首先是 10。此外,对于 10 以下的值,您添加 2 个零,对于 100 以下的值,您只添加 1 个零,这样所有值都将有 3 个数字 :-)
-
@RobChurch 你是对的。老年人/老板应该更有帮助。