티스토리 뷰

728x90

Dart의 Map에서 key 또는 value로 요소를 제거하는 방법을 알아보겠습니다.

 

Key로 Map의 요소 제거 

Map.remove(key)는 Map에서 key에 해당하는 key-value 요소를 제거합니다.

void main() {

    Map<String, int> myMap = {
      'a': 1,
      'b': 2,
      'c': 3,
    };
    print(myMap);

    myMap.remove('b');
    print(myMap);
}

// {a: 1, b: 2, c: 3}
// {a: 1, c: 3}

 

Value로 Map의 요소 제거 

특정 value를 갖고 있는 요소를 제거하려면 Map.removeWhere(람다 함수)를 이용해야 합니다.

람다 함수는 Map이 갖고 있는 모든 key-value에 대해서 동작하며, true를 리턴하는 요소들을 모두 삭제합니다.

아래 예제는 removeWhere()를 이용하여 Value가 2인 요소를 찾아서 삭제합니다.

void main() {

    Map<String, int> myMap = {
      'a': 1,
      'b': 2,
      'c': 3,
    };
    print(myMap);

    myMap.removeWhere((key, value) => value == 2);
    print(myMap);
}

// {a: 1, b: 2, c: 3}
// {a: 1, c: 3}

 

Map의 모든 요소 제거

Map.clear()는 Map이 갖고 있는 모든 key-value 요소들 제거합니다.

void main() {

    Map<String, int> myMap = {
      'a': 1,
      'b': 2,
      'c': 3,
    };
    print(myMap);

    myMap.clear();
    print(myMap);
}

// {a: 1, b: 2, c: 3}
// {}
728x90
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함