• List와 마찬가지로 컬렉션의 일종인 Set에도 데이터를 추가하거나 제거할 수 있다.
  • but, 중복을 허용하지 않기 때문에 중복해서 데이터를 추가하는 경우에는 무시하게 된다. (알아서 됨)
  • 문자열 집합에 중복된 데이터를 추가하고 제거하는 예제 코드를 통해 확인해보자.

 

그림11.32-Set에 중독된 값을 넣고 출력해보는 프로그램

  • add 메소드를 이용해 중복된 값을 넣었지만 이 프로그램을 실행했을 때는 다음과 같이 두개의 요소만 출력된다.

그림11.34-Set에서 마지막에 치킨을 제거

  • Set에서도 List와 같이 remove 메소드를 이용하면 데이터를 제거할 수 있다.
  • Set도 contains 메소드를 이용해 특정 데이터가 집합 안에 포함되어 있는지를 확인할 수 있다.
  • but, List에서는 중복 체크용으로 contains 메소드를 사용했던 것과 달리 Set에서는 말 그대로 특정 데이터의 포함 여부를 판단하는 조금 더 원초적인 용도에 어울린다.
  • 결국 contains 메소드는 List나 Set이나 동일한 기능을 하지만 어떤 것을 사용할지를 선택하는 것은 프로그래머 몫이다.
  • 주민등록번호 목록과 같이 동일한 값이 존재하지 않는 경우에는 애초부터 오입력 방지를 위해 Set을 사용하는 편이 더 어울릴 것이다. 
  • but, 컬렉션의 몇 번째에 어느 값이 있는지를 알고 사용하기 위해서는 List를 선택하는 편이 더 좋을 것이다.
  • 결국 용도에 맞게 사용하는 것이 중요하다.

+ Recent posts