List에 데이터를 추가해야 하는 경우가 있습니다.
추가하고 싶은 경우에는 add 또는 addAll을 사용해 추가할 수 있습니다.
- add – 하나의 데이터를 추가
- addAll – 복수 데이터를 한 번에 추가
add
먼저 add를 사용해 리스트에 값을 하나씩 추가하는 방법을 보겠습니다.
add를 사용해 값을 추가하면 List의 마지막에 값이 추가됩니다.
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
add를 사용해 값을 추가했기 때문에 List에 1부터 4까지 순서대로 값이 추가되었습니다.
add에 위치를 지정해 값을 추가할 수도 있습니다.
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(3);
list.add(4);
list.add(1, 2);
첫 번째 파라미터는 인덱스 위치를 의미합니다.
두 번째 파라미터는 추가하고 싶은 값을 의미합니다.
List 인덱스는 0부터 시작합니다.
위 샘플에서는 인덱스 1에 값 2를 추가하도록 했습니다.
결과를 출력해보면 값 1과 3 사이에 2가 추가되어있을 것입니다.
addAll
이번에는 addAll 사용 방법을 보겠습니다.
addAll은 한 번에 복수의 값을 추가하고 싶을 때 사용합니다.
샘플을 보면서 사용 방법을 확인해보겠습니다.
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
List<Integer> list2 = new ArrayList<Integer>();
list2.add(5);
list2.add(6);
list2.add(7);
list2.add(8);
list.addAll(list2);
샘플에서 List 두 개를 만들고 list에 list2의 모든 값을 addAll 사용해 추가했습니다.
또는 다음과 같이도 addAll를 사용할 수도 있습니다.
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.addAll(Arrays.asList(5, 6, 7, 8));
addAll도 위치를 지정해 값을 일괄로 추가할 수 있습니다.
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
List<Integer> list2 = new ArrayList<Integer>();
list2.add(5);
list2.add(6);
list2.add(7);
list2.add(8);
list.addAll(1, list2);
사용 방법은 add와 같습니다.
첫 번째 파라미터는 인덱스 위치이고, 두 번째 파라미터는 값을 지정합니다.
지금 까지 샘플에서는 리스트 형태로 만들어 값을 일괄로 추가했습니다.
이번에는 Collections을 사용해 리스트를 따로 만들지 않고 추가하는 방법을 보겠습니다.
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
Collections.addAll(list, 5, 6, 7, 8);
Collections.addAll을 사용해 List에 여러 개 값을 한 번에 추가했습니다.
List에 값을 추가하는 메서드인 add 사용 방법을 알아봤습니다.
일괄로 값을 추가하고 싶은 경우에는 addAll를 사용하는 것도 좋은 방법이 됩니다.
댓글