这是我考试时没有通过的问题。我的答案是9次,因为我算过,循环会再做一轮检查条件是否为假,之后才会退出增强循环。
int array[] = {81,13,10,34,23,234,8,33};
int value = array[0];
int value2 = value;
for (int element : array){
if (element > value){
value = element;
}
if (element < value2){
value2 = element;
}
}
你能帮我弄清楚循环工作的具体次数,以及即使元素等于33,它是否在最后一轮检查条件?
你可以运行这个程序,检查答案。
int count=0;
int array[] = {81,13,10,34,23,234,8,33};
int value = array[0];
int value2 = value;
for (int element : array){
if (element > value){
value = element;
}
if (element < value2){
value2 = element;
}
count++;
}
System.out.println("Loop is executed " + count + " times");
语法为 for (int element : array)
意味着你将使 迭代 对于 每个值 一个接一个,所以你会比值的迭代量相同,也就是8个。
8是答案,因为虽然条件会被第九次检查,但由于条件不满足,程序不会进入循环。