본문 바로가기
프로그래밍/Android

(Android) Collections.unmodifiableMap

by LiveData 2018. 12. 20.
반응형

Collections.unmodifiableMapCollections.unmodifiableList


Map이나 List의 변수의 내용을 "읽기"만 하고 싶을때


즉, 변경하지 않을 때 사용합니다.



만약 변경이 발생할 경우 예외 처리가 됩니다.



예) Glide(이미지 로드 모듈)의 Flicker 예제 



private static final Map<Page, Integer> PAGE_TO_TITLE;
static {
Map<Page, Integer> temp = new HashMap<>();
temp.put(1, R.string.small);
temp.put(2, R.string.medium);
temp.put(3, R.string.list);
PAGE_TO_TITLE = Collections.unmodifiableMap(temp);
}
위 HashMap의 temp변수에 넣은 small,medium,list 의 3개의 데이터(※ HashMap은 동기화를 보장하지 않는 키와 값으로 데이터를 저장)PAGE_TO_TITLE 에 읽기전용 데이터로 변수를 넣습니다.


반응형