반응형
자바에서 많이 사용하게 되는 경우 중 하나가
배열(Array), List, Set 에서
Array, List, Set 으로 옮겨주는 경우인데
(array to list(set) ..)
대부분은 for 문을 사용해 옮기곤 하는데
이게 하다보면 엄청나게 귀찮다
하지만 List와 Set은 Collection을 상속하기 때문에
addAll이라는 엄청난 메소드를 사용할 수 있는데
보면 addAll 메소드는
파라미터가 Collection 타입이기 때문에
Collection을 상속하기만 하면
통곡의 for문 노가다를 사용하지 않고도
쉽고 편하게 넣을 수 있게 된다
(List, Queue, Set은 Collection 상속)
위 이미지의 예제에서도
List와 Set은 Collection을 상속하기 때문에
그냥 넣어주기만 하면 ArrayList건 LinkedList건
상관없이 그냥 쭉쭉 들어간다
반면 Array(배열)은 Collection을 상속하지 않기 때문에
Array.asList(배열명);
을 통해 List 타입으로 만들어준 후에
addAll을 사용해주면 잘 들어가는 것이 보인다
마지막으로 예제에 사용한 코드는 아래와 같다
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
Set<String> set = new HashSet<String>();
Vector<String> vector = new Vector<String>();
String[] arr = {"D"};
list.add("A");
set.add("B");
vector.add("C");
list.addAll(set); // 전체 삽입(자동으로 맨 뒤에)
list.addAll(0, vector); // 삽입할 인덱스 위치 지정
list.addAll(Arrays.asList(arr));
System.out.println(list);
}
반응형
'Language > Java' 카테고리의 다른 글
자바 배열에서 특정 값이 몇개 들었는지 확인방법 (0) | 2021.10.26 |
---|---|
자바 배열을 ArrayList LinkedList로 받는 방법 (0) | 2021.10.25 |
자바 String.charAt 을 String으로 받는 방법 (0) | 2021.10.05 |
자바 배열 자료형 선언 시 다른 자료형에서 즉시 변환 방법 (0) | 2021.10.05 |
자바 Calendar를 이용해 쿼리 between 처럼 사용방법 (0) | 2021.07.05 |
댓글