Collections
Arrays와 동일하게 Collection에 관련된 메서드를 제공하는 클래스
1. Collection의 동기화
멀티 쓰레드 프로그래밍을 하게 되면, 하나의 객체를 여러 쓰레드가 동시 접근이 가능하다.
따라서 데이터의 일관성을 위해 동기화가 필요하다.
List<Integer> list = Collections.synchronizedList(new ArrayList<>(Arrays.asList(1,2,3)));
2.Unmodified 컬렉션
데이터 일관성을 위해 동기화를 했지만, 만약 데이터를 번경하지 않게 하기 위해서는 해당 메서드를 이용한다.
List<Integer> list = Collections.unmodifiableList(new ArrayList<>(Arrays.asList(1,2,3)));
3. 하나의 종류만 저장하는 컬렉션
컬렉션의 경우 다양한 List, Set, Map등을 한번에 저장할 수 있는데 이러한 다형성은 단점이 될 수도 있다. 따라서 이를 막고 하나의 객체로만 저장하게 하는 메서드입니다.
물론 Generic을 통해 객체를 제한할 수 있지만, 호한성을 위해서 남아있다.
List<Integer> list2 = Collections.checkedList(new ArrayList<>(Arrays.asList(1,2,3)), Integer.class);
'JAVA > 자바스터디' 카테고리의 다른 글
[자바스터디] Generic (0) | 2023.01.28 |
---|---|
[자바 스터디] for vs foreach vs iterator (0) | 2023.01.28 |
[자바스터디] Collection - Iterator (0) | 2023.01.22 |
[자바스터디] Collection - List (0) | 2023.01.21 |
예외 처리 (0) | 2022.11.19 |