간단한 프로그램이 있습니다.
public class Mathz {
static int i = 1;
public static void main(String[] args) {
while (true){
i = i + i;
System.out.println(i);
}
}
}
이 프로그램을 실행할 때 내가 보는 것은 출력에 0
대한 것 i
입니다. 나는 우리가 i = 1 + 1
, 그 뒤에 i = 2 + 2
, i = 4 + 4
등이 뒤따를 것이라고 예상했을 것입니다 .
이것은 우리 i
가 왼쪽 에서 다시 선언 을 시도하자마자 그 값이로 재설정된다는 사실 때문 0
입니까?
누구든지 이것에 대한 자세한 내용을 알려줄 수 있다면 좋을 것입니다.
변경 int
에 long
그것은 예상대로 번호를 인쇄 할 것으로 보인다. 최대 32 비트 값에 도달하는 속도에 놀랐습니다!