반응형
Java Long 기본 유형 최대 한계
이 질문에는 이미 답변이 있습니다.
'generateNumber'메서드가 호출 될 때마다 1 씩 증가하는 Long 기본 유형을 사용하고 있습니다. Long이 최대 한도에 도달하면 어떻게됩니까? 예외가 발생하거나 최소값으로 재설정됩니까? 여기 내 샘플 코드가 있습니다 :
class LongTest {
private static long increment;
public static long generateNumber(){
++increment;
return increment;
}
}
Long.MAX_VALUE
입니다
9,223,372,036,854,775,807
.나노 초당 한 번 함수를 실행했다면
에 따라이 상황이 발생하는 데 여전히 292 년이 걸립니다 .그런 일이 발생하면
Long.MIN_VALUE
에 또는
-9,223,372,036,854,775,808
다른 사람들이 말한 것처럼 래핑됩니다 .
오버플로되어로 바뀝니다
Long.MIN_VALUE
.그래도 그렇지는 않습니다. 초당 1,000,000 번 증가하더라도 오버플로하는 데 약 300,000 년이 걸립니다.
범위는 -9,223,372,036,854,775,808에서 +9,223,372,036,854,775,807입니다. -9,223,372,036,854,775,808에서 시작합니다.
Long.MIN_VALUE.
long의 최대 값을 초과해도 예외가 발생하지 않고 대신 다시 돌아옵니다. 이렇게하면 :
Long.MAX_VALUE + 1
결과는 Long.MIN_VALUE와 같습니다.여기에서 :
자바 숫자가 long.max_value를 초과합니다-감지하는 방법?
참고 URL :
https://stackoverflow.com/questions/15505515/java-long-primitive-type-maximum-limit
반응형
'Programming' 카테고리의 다른 글
UITableView 일부 셀을 "선택 불가능"으로 설정 (0) | 2020.08.04 |
---|---|
비밀번호를 해시하는 방법 (0) | 2020.08.04 |
새 탭의 javascript window.location (0) | 2020.08.04 |
ImportError : Crypto.Cipher라는 모듈이 없습니다. (0) | 2020.08.04 |
자바 스크립트 배열을 문자열로 변환 (0) | 2020.08.04 |