중복 된 질문 일 가능성이 있지만 검색 할 때 비슷한 질문을 찾을 수 없습니다.런타임시 특정 정수에 몇 바이트가 필요합니까?
런타임에 int
에 필요한 부호있는 바이트 수를 결정하는 쉽고 효율적인 방법을 찾고 있습니다.
예를 들어, 다음과 같은 값을 가진 int
을 고려
1 - Requires 1 Byte
10 - Requires 1 Byte
128 - Requires 2 Bytes
1024 - Requires 2 Bytes
32768 - Requires 3 Bytes
...
Integer.MAX_VALUE - Requires 4 Bytes
편집 : 그것은 나에게 분명 int
이 값에 관계없이 메모리의 4 개 byte
의 필요하다는 것을. 그럼에도 불구하고, 나는 그렇지 않은 경우에 값이 차지할 바이트의 양을 찾고있다.
이상적으로 내가 찾고 대답은 비트 조작을 사용하고 누군가가이 일을 훨씬 더 효율적인 방법하지만 간단한을 가지고 확신 0
바이트는 8 비트입니다. 번호에 필요한 비트 수를 식별해야합니다. –
@ ThorbjørnRavnAndersen 내 번호가 필요한 '바이트'수를 확인하려고합니다. –
Java에서 'int'는 내용에 관계없이 항상 4 바이트의 메모리가 필요합니다. – Alnitak