ํ ArrayList() ์ปฌ๋ ์
์ ๋ชจ๋ ์์๋ฅผ โโ๋ค๋ฅธ ์ปฌ๋ ์
์ ์ถ๊ฐํด์ผ ํ๋ ๊ฒฝ์ฐ Java ArrayList ํด๋์ค์ addAll() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค . ์ด ๊ธฐ์ฌ์์๋ ์ด ๋ฐฉ๋ฒ์ด ์ด๋ป๊ฒ ์๋ํ๋์ง ์ค๋ช
ํ๊ณ ๋ช ๊ฐ์ง ์ฝ๋ ์์ ๋ฅผ ์ ๊ณตํ ๊ฒ์
๋๋ค.
ArrayList addAll() ๋ฉ์๋ ์๊ทธ๋์ฒ
java.util.ArrayList.addAll ๋ฉ์๋ ์๋ ๋ ๊ฐ์ง ๋ณํ์ด ์์ต๋๋ค . ์ฌ๊ธฐ ์์ต๋๋ค.
boolean addAll(Collection<? extends E> c)
์ด ๋ฉ์๋๋ ํธ์ถ ๊ฒฐ๊ณผ ๋ชฉ๋ก์ด ๋ณ๊ฒฝ๋ ๊ฒฝ์ฐ true๋ฅผ ๋ฐํํ์ง๋ง ๊ฐ์ฅ ์ค์ํ ๊ฒ์ ์ง์ ๋ ์ปฌ๋ ์
์ ๋ชจ๋ ์์๋ฅผ โโ์ง์ ๋ ์ปฌ๋ ์
์ Iterator๊ฐ ๋ฐํํ๋ ์์๋๋ก ์ด ๋ชฉ๋ก์ ๋์ ์ถ๊ฐํ๋ค๋ ๊ฒ์
๋๋ค. ์์ c๋ ArrayList ์ ์ถ๊ฐ๋ ๋ชฉ๋ก์
๋๋ค . ๋ํ ์ง์ ๋ ์ปฌ๋ ์
์ด null์ธ ๊ฒฝ์ฐ ๋ฉ์๋์์ NullPointerException์ด ๋ฐ์ํฉ๋๋ค.
boolean addAll(int index, Collection<? extends E> c)
์ด ๋ฉ์๋๋ ์ง์ ๋ ์์น ์ธ๋ฑ์ค์์ ์์ํ์ฌ ์ง์ ๋ ์ปฌ๋ ์
c ์ ๋ชจ๋ ์์๋ฅผ โโ์ด ๋ชฉ๋ก์ ์ฝ์
ํฉ๋๋ค .
ArrayList addAll() ๊ตฌ๋ฌธ ์์
Java ํ๋ก๊ทธ๋จ์์ ArrayList addAll() ๋ฉ์๋ ํธ์ถ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
myList.addAll(myNewList))
์ฌ๊ธฐ์ myList ๋ ์๋ ArrayList ์ด๊ณ myNewList๋ ๋ชฉ๋ก์ด๋ฉฐ ๋ชจ๋ ๊ฐ์ด ์กด์ฌํ๋ ๊ฒฝ์ฐ myList ์ ์ถ๊ฐ๋ฉ๋๋ค .
myList.addAll(2, myNewList))
๋งค๊ฐ๋ณ์ ๊ฐ ๋ ๊ฐ์ธ ArrayList addAll() ๋ฉ์๋ ์ ๋ณํ์
๋๋ค . myNewList ์ ๋ชจ๋ ์์๋ myList ์ ์ถ๊ฐ๋๊ณ ์ฒซ ๋ฒ์งธ ์์ myNewList[0] ๋ myList[2] ๊ฐ ๋๊ณ , myNewList[1]์ ์ด์ myList[3] ๊ฐ ๋ฉ๋๋ค . ์๋ ๋ชฉ๋ก์ ์์๋ ๋ฒํธ 2๋ ์ ์ฝค๋ณด ๋ชฉ๋ก์ ๋์ผ๋ก ์ด์๋ฉ๋๋ค.
ArrayList addAll() ์ฝ๋ ์์
์ด์ ๋ช ๊ฐ์ง ์ฝ๋ ์์ ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค. ์น๊ตฌ ๋ชฉ๋ก์ ๋ง๋ค๊ณ ์ด๋ฆ์ '์น๊ตฌ'๋ก ์ง์ ํ๊ณ ๊ฑฐ๊ธฐ์ ์ด๋ฆ์ ์ถ๊ฐํด ๋ด ์๋ค. ์๋ฅผ ๋ค์ด, ์ฐ๋ฆฌ๋ ๋ํ์ ์์ํ๊ณ ํ ๋ฒ์ ๋ช ๋ช ์ ์๋ก์ด ์น๊ตฌ๋ฅผ ์ฌ๊ท์์ต๋๋ค. ์๋ก์ด ์น๊ตฌ ๋ชฉ๋ก์ ๋ง๋ค ์ ์๋ ์ข์ ๊ธฐํ์ ๋๋ค. ์๊ฐ์ด ์ง๋๊ณ ์ ์น๊ตฌ๊ฐ ์ง์ง์ธ์ง ํ ๋ฒ ํ์ธํ๊ธฐ ๋๋ฌธ์ ๊ธฐ๋ณธ ์น๊ตฌ ๋ชฉ๋ก์ผ๋ก ์ด๋ํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. addAll() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฅผ ์ํํ ์ ์์ต๋๋ค . ํ๋ก๊ทธ๋จ์์ ์ด๊ธฐ ์น๊ตฌ ๋ชฉ๋ก, ์ ์น๊ตฌ ๋ชฉ๋ก, ์ ๋ฐ์ดํธ๋ ์น๊ตฌ ๋ชฉ๋ก ๋ฐ addAll() ๋ฉ์๋ ์์ ๋ฐํ๋ ๋ถ์ธ ๊ฐ์ ์ฝ์์ ์ธ์ํฉ๋๋ค . ๋ฉ์๋์ ์๋์ผ๋ก ์ธํด ์๋ ๋ชฉ๋ก์ด ๋ณ๊ฒฝ๋ ๊ฒฝ์ฐ true๋ฅผ ๋ฐํํ๊ณ ๋ณ๊ฒฝ๋์ง ์์ ๊ฒฝ์ฐ false๋ฅผ ๋ฐํํฉ๋๋ค.
import java.util.ArrayList;
import java.util.List;
public class AddAllDemo {
public static void main(String[] args) {
List<String> friends = new ArrayList<>();
friends.add("Johnny");
friends.add("Ivy");
friends.add("Rick");
System.out.println(friends);
List<String> newFriends = new ArrayList<>();
newFriends.add("Andrew");
newFriends.add("Alex");
newFriends.add("Neil");
System.out.println(newFriends);
//let's print out the value addAll() method returns
//here it's true because list friends was changed
System.out.println(friends.addAll(newFriends));
System.out.println("My new list with new friends added: ");
System.out.println(friends);
}
}
์ถ๋ ฅ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
[Johnny, Ivy, Rick] [Andrew, Alex, Neil] true ์ ์น๊ตฌ๊ฐ ์ถ๊ฐ๋ ๋ด ์ ๋ชฉ๋ก: [Johnny, Andrew, Alex, Neil, Ivy, Rick]
๋์ผํ ์์
์ ์ํํ์ง๋ง ์น๊ตฌ์๊ฒ ๋น ๋ชฉ๋ก์ ์ถ๊ฐํ๋ ค๊ณ ํ๋ฉด ๋ฐฉ๋ฒ์ด ์๋ํ์ง๋ง ์๋ ๋ชฉ๋ก์ด ๋ณ๊ฒฝ๋์ง ์์์ผ๋ฏ๋ก true๊ฐ ์๋ false๋ฅผ ๋ฐํํฉ๋๋ค.
import java.util.ArrayList;
import java.util.List;
public class AddAllDemo3 {
public static void main(String[] args) {
List<String> friends = new ArrayList<>();
friends.add("Johnny");
friends.add("Ivy");
friends.add("Rick");
System.out.println(friends);
List<String> newFriends = new ArrayList<>();
System.out.println(newFriends);
System.out.println(friends.addAll(newFriends));
System.out.println("My new list with new friends added: ");
System.out.println(friends);
}
}
์ถ๋ ฅ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
[Johnny, Ivy, Rick] [] false ์ ์น๊ตฌ๊ฐ ์ถ๊ฐ๋ ๋ด ์ ๋ชฉ๋ก: [Johnny, Ivy, Rick]
์ด์ ๋ ๊ฐ์ ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ addAll() ๋ฉ์๋๋ฅผ ์ฌ์ฉํด ๋ณด๊ฒ ์ต๋๋ค .
boolean addAll(int index, Collection<? extends E> c)
๊ผฌ๋ฆฌ๊ฐ ์๋ ์ค๊ฐ์ ์๋ก์ด ์น๊ตฌ๋ฅผ ๋ชฉ๋ก์ ๋ค์ ์ถ๊ฐํฉ์๋ค. ์ฐ๋ฆฌ์ ๊ฒฝ์ฐ ์์ ๋ฒํธ๊ฐ 0์ธ Johnny ๋ฐ๋ก ๋ค์์ ์๋ค๊ณ ๊ฐ์ ํด ๋ด
์๋ค.
import java.util.ArrayList;
import java.util.List;
public class AddAllDemo2 {
public static void main(String[] args) {
List<String> friends = new ArrayList<>();
friends.add("Johnny");
friends.add("Ivy");
friends.add("Rick");
System.out.println(friends);
List<String> newFriends = new ArrayList<>();
newFriends.add("Andrew");
newFriends.add("Alex");
newFriends.add("Neil");
System.out.println(newFriends);
System.out.println(friends.addAll(1, newFriends));
System.out.println("My new list with new friends added: ");
System.out.println(friends);
}
}
ํ๋ก๊ทธ๋จ ์์
์ ์์ ๊ฒฐ๊ณผ : Andrew๋ ์ด์ ํตํฉ ๋ชฉ๋ก์์ 1 ์, Alex - 2, Neil - 3, ์ด์ ์ 1 ์์๋ Ivy๋ 4 ์๋ก ์ด๋ํ์ต๋๋ค.
[Johnny, Ivy, Rick] [Andrew, Alex, Neil] true ์ ์น๊ตฌ๊ฐ ์ถ๊ฐ๋ ๋ด ์ ๋ชฉ๋ก: [Johnny, Andrew, Alex, Neil, Ivy, Rick]
GO TO FULL VERSION