작성
·
280
0
섹션 0, dartpad 기본기인 첫 번째 영상을 보고있는데요.
Set함수를 배우는 부분에서 final Set<String> names = { ... 하셨는데,
제가 영상 앞에서 배우기로는 final은 타입을 따로 주지 않아도 되고, 값을 바꿀 수 없다는 걸로 배웠는데
제가 따로 테스트해본 결과
(1): final Set<> names ... 로 작성 -> 타입이 없다며, 오류발생.
(2): names.add("") -> final로 선언을 하면, 값을 바꿀 수 없는걸로 아는데 값이 추가가능함.
이 부분에서 앞에서 배운 final 개념이 혼동이 와서 이렇게 질문을 남겨봅니다.
리스트에서의 final은 다른 개념인건가요?
답변 1
0
안녕하세요!
1번 질문은 제가 잘 이해 못하겠습니다.
Set<여기에 타입 입력> <<- 리스트처럼 제너릭에 타입을 입력해줘야하는데 이걸 안해서 문제 되시는게 맞을까요? 아니라면 다시 질문 부탁드립니다.
2번의 경우 Set의 각각 값들은 바꿀 수 있습니다. final Set names; 이렇게 선언할 경우 names 변수를 직접 변경은 불가합니다.
names = Set.from([])
위 코드는 불가합니다 names 변수는 final이라 변경이 불가하기때문이죠.
names 변수와 names 변수에 “추가할” 변수는 다른 선언입니다.
답변이 충분하지 않다면 다시 질문 주세요!
감사합니다!
답변 해주셔서 감사합니다 ^^