1. Arrays.asList() // Array → List
import java.util.List;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
String[] strArr = {"A", "B", "C"};
List<String> list = Arrays.asList(strArr);
System.out.println(list.toString());
}
}
[A, B, C]
리스트를 바꾸면 원본 배열의 값도 바뀌고, 배열을 바꿔도 리스트의 값이 바뀐다.
Arrays.asList()가 반환한 List의 크기를 변경할 수 없다 → 추가, 삭제가 불가능하다 (저장된 내용 변경은 가능) 크기를 변경하고 싶다면 (원본 배열의 값과 변환 된 list가 동기화 되는것을 막으려면)
List<String> list = new ArrayList<String>(Arrays.asList(strArr));
2. toArray() // List → Array
import java.util.ArrayList;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("A");
list.add("B");
String[] strArr = list.toArray(new String[0]);
System.out.println(Arrays.toString(strArr));
}
}
[A, B]
toArray()의 파라미터로 객체를 생성하여 넘겨주는데 배열의 크기가 list의 크기보다 작다면 자동으로 list크기로 만들어 주고 list크기보다 크다면 빈 공간은 null로 채워진다.
'자바' 카테고리의 다른 글
[Java]배열의 중복 제거 (0) | 2023.09.15 |
---|