728x90
BitSet이란?)
자바에서 BitSet란 플레그를 비트로 계산할수 있도록 해주는 메서드 이다.
BitSet으로 선언하면
BitSet의 크기는 동적으로 조절된다.
따로 초기화시에 자바에서 size를 지정하지 않았다면 default size 는 8byte 이다.
why? 사용?)
보통 플래그를 int로 선언해서 int plag = 0; 이라고 한다면 int값인 4byte가 소모된다.
boolean 자료형의 경우 1byte(= 8bit)의 메모리가 필요한 반면,
비트로 저장하면 1bit만 사용한다.
동적 계산법 (DP : Dynamic Programming)에 유리
boolean 배열 처럼 사용할 수 있다!!
선언)
import java.util.*;
BitSete bs = new BitSet();
선언할떄 위와 같이 선언해 준다.
도구들)
bs.get(숫자);
: 숫자에 해당하는 비트가 true 냐 false냐 판별해라 라는 의미
bs.set(숫자);
: 숫자에 해당하는 비트를 true로 만들어줌 기본적으로 false 로 되어 있음!
bs.clear(숫자);
: 숫자에 해당하는 비트를 false로 만들어준다.
bs.isEmpty();
: 비트가 모두 false로 되어있냐 확인해 준다. 맞으면 true 틀리면 false
예제들)
import java.util.BitSet;
public class test {
public static void main(String[] args) {
BitSet bs = new BitSet();
bs.get(1);
System.out.println(bs.get(1));
bs.set(1);
System.out.println(bs.get(1));
bs.get(1);
System.out.println(bs.get(1));
bs.clear(1);
System.out.println(bs.get(1));
bs.get(1);
System.out.println(bs.get(1));
bs.isEmpty();
System.out.println(bs.isEmpty());
}
}
차례대로
false
true
true
false
false
true
가 출력 된다.
728x90
'java || spring boot' 카테고리의 다른 글
유용한 intellj 단축키 (0) | 2025.02.18 |
---|---|
Java에서 Enum + Bitmask 패턴 활용하기 (0) | 2025.02.10 |
묵시적형변환이란? (1) | 2025.01.16 |
API 요청 하기 restTemplate 사용 (0) | 2024.05.10 |
API 사용을 위해 HTTP 요청 헤더 만들기 (0) | 2024.05.10 |
댓글