collection 인터페이스와 혼동하지말자
Arrays 배열과 같은 메서드 fill(), copy(), sort() binarySearch() 를 제공한다. 이 매서드들은 같은 기능을 하므로 설명은 생략 하겠다.
멀티쓰레드 프로그래밍에서는 하나의 객체를 여러 쓰레드가 동시에 접근할 수 있기 떄문에 데이터의 일관성을 유지하기 위해서는 공유되는 객체에 동기화 가 필요하다.
컬렉션은 동기화를 자체적으로 처리하지 않고 필요한 경우에만 collections 클래스의 동기화 메서드를 이용한다
컬렉션에 저장된 데이터를 보호하기 위해 컬렉션을 변경할 수 없게 즉 읽기전용으로 만들어야 할떄가 있다. 주로 말티 쓰레드 프로그래밍에서 여러 쓰레드가 하나의 컬렉션을 공유하다보면 데이터가 손상될수 있는데 이를 방지하려면 아래와 같은 메서드들을 이용하자.
단 하나의 객체만 저장하는 컬렉션을 만들고 싶을떄 사용한다.
매개변수로 저장할 요소를 지정하면, 해당 요소를 저장하는 컬렉션을 반환한다. 그리고 반환된 컬렉션은 변경 불가이다.
컬렉션에 저장된 종류의 객체만 저장할수 있도록 제한 하고 싶을때 사용한다.
모든 종류의 객체를 저장할 수 있다.
두번쨰 매개변수에 저장할 객체의 클래스를 지정하면 된다.