2013-08-25 2 views

답변

3

자바 (32 개) boolean의 배열은 자바 int의 약 8 배 공간이 필요이 줄 것입니다. 이는 대부분의 컴퓨터 아키텍처에서 주소 지정 가능한 최소 메모리 단위가 8 비트 바이트이기 때문에 "묶음"불리언 배열을 만들기 위해서는 추가 오버 헤드가 필요하기 때문입니다.

부울 당 한 비트를 사용하려면 부울 배열 배열 대신 BitSet 클래스를 사용하십시오. 데이터 그 자체 이외에 약간의 오버 헤드가 발생하기 때문에 32 비트만으로 이러한 데이터 구조를 사용하는 것은 단순한 배열에서 전환하는 것을 정당화하기에 충분하지 않을 수 있습니다.

+0

감사합니다. 그냥 분명히 : 부울 변수가 8 비트의 데이터를 필요로하지만 다른 비트를 무시하고 단일 비트만을 사용한다는 의미입니까? – user2705335

+1

@ user2705335 올바른데, Java는 부울 값으로 8 비트를 사용합니다. – dasblinkenlight

관련 문제