我不明白为什么它会这样工作,希望有人可以帮我详细解释一下,非常感谢你
public class Ex14 {
public static int lg(int N) {
int i, n;
for (i = 0, n = 1; n <= N; i++) {
n *= 2;
}
return i - 1;
}
public static void main(String[] args) {
System.out.println(lg(1025));
}
}
答案 0 :(得分:0)
每次循环,n
乘以2。所以n
的值在循环运行时变为1,2,4,8,16 ......那产生2的整数幂,对吧?