List.of() <-> Arrays.asList() 차이점 (Java)

SJW·2023년 7월 22일
0

Array를 List로 변경하기 위해서는 Arrays.asList(array)와 List.of(array)가 사용가능하다.

차이점

  • List.of(array)
  1. 변경 불가
  • Arrays.asList(array)
  1. 변경 가능

1번의 주의사항

List.of(array) 와 Arrays.asList(array)의 1번에서 주의해야할 점이 있다.
둘다 add()메서드를 사용하는 경우 오류가 발생한다.

  • Arrays.asList(array)의 경우

    Arrays.asList(array)의 경우 배열을 리스트로 변경해 주지만 크기가 고정된다.
    그래서 추가할수가 없다.
    하지만 arrayList로 변경해준다면 arrayList의 특성상 자동으로 저장용량이 늘어나기 때문에 오류가 발생하지 않는다.
  • List.of(array)의 경우



List.of(array)도 마찬가지로 배열을 리스트로 전환을 해주지만 크기는 정해져 있어서 add 메서드를 추가를 해줄수는 없다.
List.of(array)도 arrayList를 이용하면 해결이 가능하다.

  • List.of(array)
  1. null 허용X
  • Arrays.asList(array)
  1. null 허용O
  • Arrays.asList(array)
  1. Arrays.asList(array)는 참조를 사용하기 때문에 배열이 변경이 되면 리스트도 변경!
  • List.of(array)
  1. List.of(array)는 독립적인 객체를 만들기 때문에 리스트 변경X

0개의 댓글