【发布时间】:2020-04-29 08:02:19
【问题描述】:
我有一个基本代码:
public class experiment {
public static void main(String[] args) {
System.out.println(experiment(80));
}
public static int experiment (int number) {
while (number > 10) {
number = number / 2;
return number;
} return -1;
}
}
它返回给我40。
所以这意味着没有循环变量number。
我希望它继续在 number (80, 40, 20, 10) 上循环,直到它返回 10。
有没有办法不使用 for 循环?
【问题讨论】:
-
你返回第一个除法后的数字;循环结束后返回。
-
你的循环中有一个 return 语句。所以它将在第一次迭代时返回。只需将其删除并在循环完成后返回。顺便说一句:如果您使用 for 循环并在 for 循环内返回,也会发生同样的事情。这不是特定于 while 循环的
-
返回号码; -> 有你的问题,这结束了方法,所以循环也是如此
-
public static int experiment (int number) { while (number > 10) { number = number / 2; } return number; } -
哦,我相信它可能会起作用。您可以发布答案,请
标签: java loops for-loop while-loop