Flutter

[Flutter] 컬렉션(자료구조)

미로910 2024. 9. 4. 11:08
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