dart 에서 제공 하는 자료구조와 특징에 대해 알아 보자.
컬렉션은 여러 값을 하나의 변수에 저장할 수 있는 타입을 의미합니다.
주요 컬렉션 타입들은 다음과 같습니다:
List (리스트):
- 여러 값을 순서대로 저장하고, 인덱스 번호로 접근 가능한 컬렉션 타입입니다.
Map (맵):
- '키'와 '값'의 형태로 저장하고,'키'를 기반으로 매칭되는 '값'을 바로 접근 가능한 컬렉션 타입입니다.
Set (셋):
- 중복된 데이터를 제거하고 데이터를 저장하는 컬렉션 타입입니다.
// Map은 키/값 을 사용한다.
Map<String, int> myDict = {'홍길동' : 1, "포도" : 2, '사과' : 3};
print(myDict.runtimeType);
// 맵에 새로운 새로운 키 값 추가 하기
myDict['케이트'] = 4;
print(myDict['케이트']);
// 읽기
print(myDict['홍길동']);
print(myDict.keys); // 한번에 출력됨
print(myDict.values);
print(myDict.entries);
// 수정
myDict['홍길동'] = 100;
// 삭제
myDict.remove('홍길동');
print(myDict.keys);
// Map 에 특정 키/값이 있는지 확인 하는 방법
print(myDict.containsKey('홍길동'));
print(myDict.containsKey('케이트'));
// 어떤 데이터인지 정확하게 명시할 수 없을 때 -> var
var myDictKeys = myDict.keys;
var myDictValues = myDict.keys;
print('데이터 타입 확인 : ${myDictKeys.runtimeType}');
List<String> myDictKeyList = myDict.keys.toList();
print('데이터 타입 확인2 : ${myDictKeyList.runtimeType}');
//List<String> myDictKeyList = myDict.keys.toList(); // 하나씩 끌어내서 toList로 변환
// 기본에 존재하는 map 다른 mao 데이터를 일과 추가 해야 된다면
Map<String, int> myDict2 = {'한국': 1, '일본': 2};
myDict.addAll(myDict2);
print('------------------------------');
print(myDict);
<Set>
// List -> [], Map -> {}, Set -> {}
Set<String> data = {'a', 'b', 'c', 'a'};
print(data);
data.add('d');
data.remove('a');
print(data);
// 전체 비우기
data.clear();
print(data);
'Flutter' 카테고리의 다른 글
[Flutter] dart Null Safety (0) | 2024.09.06 |
---|---|
[Flutter] List로 최대값, 최소값 구하기 (0) | 2024.09.04 |
[Flutter] 사전 기반 지식 (2) | 2024.09.04 |
[Flutter] Dart 언어 변수 (0) | 2024.09.04 |
[Flutter] 프로젝트 구조 살펴보기 (0) | 2024.09.04 |