이뮤터블 컬렉션(불변형 컬렉션)

고성욱·2023년 3월 20일
0

안드로이드

목록 보기
14/26

이뮤터블 컬렉션이란?

이뮤터블 컬렉션(Imutable Collection)은 변경 불가능한 자료구조를 의미합니다. 즉, 한 번 생성된 이후에는 수정할 수 없는 리스트나 맵 등을 의미합니다. 이를 이용하면 데이터를 보다 안전하게 다룰 수 있으며, 병렬처리 및 캐시 등에 활용될 수 있습니다.

  • 이뮤터블 컬렉션은 기존 컬렉션에서 mutabl이라는 접두어가 제거된 형태로 사용됩니다.

코드

  • var list = mutableListOf(”1”, ”2”) → var list = listOf(”1”, “2”)
  • 한 번 입력된 값을 변경할 수 없기 때문에 add나 set 함수는 지원하지 않고 최초 입력된 값을 ‘사용만’ 할 수 있습니다.
  • 배열과 다른점은 크기뿐 아니라 값의 변경도 불가능합니다

⇒ 불변형 컬렉션은 이름 그대로 수정, 추가,제거 모두 사용 할 수 없습니다.

사용하는 조건

  • 일반 변수 var와 읽기 전용 val 변수 처럼 값이 변형이 안되어야 하는 일에서 사용합니다.
  • 병렬 처리 및 캐시등에 사용됩니다.
  • 대표적인 예로 요일 데이터가 있습니다. ( val DAY_LIST = listOf(”월”, “화”, “수”,”목”,”금”,”토”,”일”)
  • 불변형 컬렉션은 val로 선언하고 변수명을 대문자로 명시하는게 좋습니다. 셋과 맴도 동일하게 사용합니다.
profile
안드로이드, 파이썬 개발자

0개의 댓글