Back-end/Java
컬렉션 프레임 워크(SET)
douStory
2021. 8. 9. 13:52
728x90
데이터 관리를 위해 자바에서 필요한 자료구조를 미리 구현해 놓은 것(LIST, SET, MAP)
- LIST : INDEX 가 존재, 중복이 가능하다
- SET : 집합이다, 순서는 없다, 하지만 중복 불가능
- MAP : 집합이고 순서도 없지만 KEY 와 VELUE가 1:1 매칭, KEY값은 중복이 불가능, VELUE 값은 중복이 가능
SET
순서와 상관 없이 중복을 허용하지 않는경우 SET인터페이스를 구현한 클래스이다.
중복을 허용하지 않는 데이터로 아이디, 주문번호 등이 있다.
Set은 순서가 없기때문에 모든 내용을 비교할때.. list에서 for문을 사용하여 index를 순서대로 확인 한 것 처럼
Set은 Iterator를 사용한다. while 문과 'hasNext() (set안에 데이터가 있니?' -> '있으면? 계속 꺼내') 를 사용한다.
Set 주머니에 인스턴스를 넣을 경우(주소를 retrun하기 때문에)
인스턴스 주소가 다른면 값이 같더라도 Set은 중복 구분을 하지 못한다.(그럼 어떻게 해..?)
메모리 주소가 아니라 memberId가 return되도록 재정의 해준다.