임의 정밀도
둘러보기로 가기
검색하러 가기
자연수 타입, 정수 타입, 유리수 타입은 메모리가 허락하는 한 임의 정밀도의 값을 담을 수 있다.
(1 << 100) println() --> 1267650600228229401496703205376 (3.141592653589793238462643383279 * 2) println() --> 6.283185307179586476925286766558
이러한 값들을 연산하는 과정에서 OutOfMemory
실패가 발생할 수 있다. 또는, 메모리 할당은 성공하더라도 연산에 과도한 시간을 써서 캡슐에 의해 TimedOut
실패가 발생할 수 있다. 따라서 나루 구현체는 임의 정밀도 연산 중간에 안전하게 멈출 수 있는 방법을 제공해야 한다.
(1 << (1 << 100)) println() -- 실패: OutOfMemory
일부 연산은 근본적으로 정확한 계산이 불가능할 수 있다(이를테면 sqrt
같은 것들). 이 경우 정밀도가 명시적인 인자로 넘겨진다.