Collection(컬렉션)
- 여러 값을 그룹으로 묶어서 효율적으로 관리하는 데이터 셋
- 종류는 List Set Map이 있다
- List -> 순서가 있는 데이터 셋, 선언할 때 꺽쇠(<>) 사이에 데이터 형을 넣어줘야한다(int의 LIst는 -> List<int>)
- [ ] 기호를 사용한다
- List안의 요소가 변동 될 경우 var로 선언해 줄 수 있고, 없는 경우 final, const로 선언 가능하다, 단 요소를 변경할 수 없다
- 타입추론으로 LIst선언가능 (var sample = [1,2,3] 이런식으로도 선언 가능하다는 말이다 )
- Set -> 중복되지 않은 값들이 묶인 데이터 셋!(중복을 허용하지 않는다)
- { } 기호를 사용한다
- 참고로 빈 Set을 만들고 싶을때는 var names = <String>{}; 와 같은 형식으로 만든다
- var numbers = {}. 로 선언하면 map을 만드는 것임
- 순서가 없다, Index가 없다는말임
- Map -> Key, Value가 하나로 1:1매칭되는 값을 가지는 데이터 셋
- 선언할때는 Map<String, String> sample = { 'k1': 'v1', 'k2':'v2 } 이런식으로 선언한다
- 특이사항으로는 키는 중복 불가하지만 값은 중복으로 넣을 수 있다
- [변수이름][[키 이름]] 을 통해 값을 검색하거나 수정할 수 있다
- keys, values를 통해 각 키 값을 모두 반환할 수 있다
- List와 Set의 차이? 순서, Index, 중복여부
Enumerations(열거형)
- 여러 '상수' 값을 묶은 데이터 셋
- 예제 -> enum Color { red, green, blue }
- 특징으로는
- 열거형 이름을 통해 열거형 값에 접근 가능 ( var Color = Color.blue }
- switch문을 통해 각 case로 분기할 수 있음
- index를 통해 열거형에 포함된 값이 열거형의 몇번째 있는지 알수 있음 (Color.red.index -> 0 )
- values를 통해 포함되어있는 값을 알 수 있음 ( var colors = Color.values 로 할경우 List<Color> 로 추론됨)
- name을통해 포함되어있는 값을 알 수 있음 ( Color.red.name -> red 값을 가짐)
- 언제 사용함? 연관된 상수들의 집합을 정의할때 사용한다고 -> 같은 개념의 여러 값을 지정할때 사용함
'Programming > Flutter' 카테고리의 다른 글
[내일배움] dart 심화 문법 - 3 (Functional Programming) (0) | 2024.10.30 |
---|---|
[내일배움] dart 심화 문법 - 2 (Function, Generic) (0) | 2024.10.30 |
[내일배움] Dart 기초 - 1 (1) | 2024.10.28 |
[내일배움] 플러터 url 외부 연결 (0) | 2024.10.23 |
[내일배움] 플러터 GetX 상태관리 라이브러리 (3) | 2024.10.23 |