강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

지현명님의 프로필 이미지
지현명

작성한 질문수

모던 안드로이드 - 코틀린과 Jetpack 활용

Unit, 배열, 리스트

val items2

작성

·

220

0

val이면 상수 선언인데 list에 추가가 가능하네요.

var로 한것과 어떤 차이점이 있나요? 

답변 1

0

오준석님의 프로필 이미지
오준석
지식공유자

val list 에 add 했다고 list 자체가 변경되는 것은 아닙니다. list에 다른 객체 대입이 불가능하기에 불변입니다.

여기서 불변은 객체 자기자신이 없어지거나 대체되지 않는다는 것입니다.

속성은 변경될 수 있지요. 예를 들어 val 사람 이면 사람의 나이가 변경될 수 있습니다. 사람 자체가 변경되는 것은 안 됩니다.

리스트도 마찬가지 입니다. 리스트를 나타내는 상자는 그대로인데 그 안에 내용이 더 들어가냐 마냐는 val이냐 var이냐와는 상관이 없는 것입니다.

var 는 상자 자체를 바꿀 수 있는 것입니다.

지현명님의 프로필 이미지
지현명

작성한 질문수

질문하기