컬렉션은 다수의 데이터를 처리할 수 있는 자료구조
List: 순서가 있고 중복 허용
Set: 순서가 없고 중복 허용하지 않음
Map: Key: Value 형식으로 키는 중복되지 않고 값은 중복 가능, 순서 없음
보통 컬렉션을 가지는 언어에서는 기본이 array 지만
다트에서는 List가 기본 배열이다
배열 형식을 갖는다
List<int> 변수명 = new List();
변수명.add(1)
변수명.add(2)
변수명.add(3)
List<dynamic> 변수명 = [1, 2, '3'];
dynamic type이 자주 사용될지는 모르겠지만..
add()
addAll([1, 2])
remove()
removeAt()
clear()
sort()
first, last
reversed
isEmpty
등을 지원한다
reversed가 프로퍼티인게 이상해서 찾아보니 - 뒤집을 일이 없으면 굉장한 낭비기 때문에..
List.from()메소드와 함께 사용해야 한다
Set<int> 변수명 = new Set();
변수명.add(1)
변수명.add(2)
변수명.add(3)
Set<number> 변수명 = {1, 2, 3};
중복 값을 추가해도 하나만 갖게 된다
순서가 없기 때문에 index로 접근이 불가하고
index를 사용하는 메소드와 프로퍼티가 없다
for..in 문으로 각각의 값에 접근 가능
맵은 키에 대한 값이 맵핑되어 있기 때문에 빠른 탐색이 가능하다
키는 중복을 허용하지 않는다
Map<key type, value type> 변수명 = { key: value };
Map<key type, value type> 변수명 = new Map();
변수명[key] = value;