java.util에 있는 Arrays에는 asList라는 정적 메서드가 존재

해당 메서드는 배열을 리스트의 형태로 바꿔준다고한다.

이때 바꿔주는 리스트가 무슨 리스트인지 궁금했다.

List는 인터페이스니까 구현한 ArrayList, LinkedList 등등이 있을 텐데..

 

Arrays 의 ArrayList가 존재한다.(Arrays의 static inner class) 이건 java.util.ArrayList와는 다른 점이 존재한다.

 

Arrays의 asList

ArrayList를 반환해준다.

 

근데 여기서 사용하는 배열은 final로 수정불가하다. add/remove등 불가 가능하게 하려면 이걸 인자로 새로운 ArrayList를 만들면 된다.

생성 시 입력받은 받은 원본 배열의 참조로 생성하기에 원본배열이 바뀌면 만들어진 List도 값이 변경된다.

배열을 asList로 바꾸는 이유는 Collection의 다양한 메서드들을 사용할 수 있기 때문이다.

Stream 사용 가능!

 

 

+ Recent posts