Dart는 list, set, map을 기본 내장된 컬렉션으로 제공한다.
프로그래밍 언어에서 가장 일반적인 컬렉션은 array 혹은 정렬된 개체 그룹이다.
Dart는 array가 List 객체이기 때문에 list라고 부른다.
[]
로 둘러쌓이고, ,
로 구분된 목록으로 list 리터럴을 만들 수 있다.
=> var list = [1, 2, 3];
list의 idx는 0부터 시작한다.
list 리터럴 앞에 cost
키워드를 붙여 list를 컴파일 상수로 만들 수 있다.
일반적인 List 타입 지정과, 빈 list 생성
List<String> strList = [];
var strList = <String>[];
list 리터럴(값)을 통한 list 생성
List<String> strList = ['대', '한', '민', '국'];
named 생성자를 통한 list 생성
// growable: true 인자를 추가하여 mutable로 생성도 가능
List<String> strList = List.filled(3, '초기값'); // ['초기값', '초기값', '초기값']
//List.filled(int length, E fill, {bool growable = false});
List<String> origin = ['안', '녕'];
List<String> strList = List.of(origin); // ['안', '녕']
// List.of(Iterable<E> elements, {bool growable = true});
List<int> nums = List.generate(5, (int idx) => idx * 2); // [0, 2, 4, 6, 8]
// List.generate(int length, E generator(int index), {bool growable = true});
Set은 순서가 없는 고유한 값들의 집합이다.