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

2024. 9. 4. 11:08·Flutter
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
'Flutter' 카테고리의 다른 글
  • [Flutter] dart Null Safety
  • [Flutter] List로 최대값, 최소값 구하기
  • [Flutter] 사전 기반 지식
  • [Flutter] Dart 언어 변수
미로910
미로910
개발자를 꿈꾸는 민경이의 기록 블로그
  • 미로910
    개발 note
    미로910
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 설치 메뉴얼
      • HTML
      • JAVA
        • Java 기초
        • Java 응용
        • 자료구조
        • HTTP
        • JSP 프로그래밍
      • MySQL
        • MySQL 기본
        • 1일 1쿼리
      • CSS
      • Spring boot
      • JS
        • 게시판 만들기
      • Git
      • Flutter
        • MVVM 활용
        • 심화 버전
        • 1일 1 Flutter
      • 디자인 패턴의 활용
      • error note
      • My Project
        • [졸작] LLM 기반 특허 유사도 분석 시스템
        • 도서 관리 프로그램 (final project)
        • amigo
        • 친구 매칭 프로그램(FMP)
      • Python
      • 딥러닝
      • 네트워크
      • 공부 노트
        • 연구회
        • 자료구조
      • 기타
  • 블로그 메뉴

    • 홈
    • 전체보기
    • -----------------------
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Flutter
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
미로910
[Flutter] 컬렉션(자료구조)
상단으로

티스토리툴바