Given:
public class TestLoop { | |
public static void main(String[] args) { | |
int array[] = {0, 1, 2, 3, 4}; | |
int key = 3; | |
for (int pos = 0; pos < array.length; ++pos) { | |
if (array[pos] == key) { | |
break; | |
} | |
} | |
System.out.print("Found " + key + " at " + pos); | |
} | |
} |
What is the result?
A. Found 3 at 2
B. Found 3 at 3
C. Compilation fails
D. An exception is thrown at runtime
題解
這題的程式會編譯錯誤,因為pos變數是在for迴圈內被宣告的,但是程式第11行卻要去取得pos變數的值,因此編譯時會有無法找到變數的錯誤。