FLUTTER ECOSYSTEM

appsup-dart/sortedmap

一个对象映射,可以根据其键和值进行排序和过滤

sortedmap 项目封面
Stars
7
Forks
4
最近推送(UTC)
2026年5月30日
项目状态
未归档
appsup-dart GitHub avatar
GITHUB Organization

appsup-dart ↗

语言Dart

此仓库发布的插件

使用的依赖

依赖清单 5 项
  • test开发依赖^1.16.5
  • benchmark_test开发依赖^0.1.1+2
  • lints开发依赖^6.0.0
  • quiver开发依赖^3.0.0
  • melos开发依赖^7.0.0

原始 README

以下为英文项目原文快照,最新内容请访问 GitHub。

展开 / 收起项目 README

Contains a SortedMap and FilteredMap class, which hold a map of objects that can be ordered relative to each other.

Unlike SplayTreeMap the objects can be ordered on both key and value or a combination of both.

The FilteredMap also allows to specify an isValid function on key/value pairs and limit the number of objects allowed in the map.

SortedMap

A simple usage example:

import 'package:sortedmap/sortedmap.dart';

main() {
  var map = new SortedMap(Ordering.byValue());
  
  map.addAll({
    "a": 3,
    "b": 2,
    "c": 4,
    "d": 1
  });
  
  print(map.lastKeyBefore("c")); // a
  print(map.firstKeyAfter("d")); // b
  
}

FilteredMap

A simple usage example:

import 'package:sortedmap/sortedmap.dart';

main() {
  var map = new FilteredMap(new Filter(
    compare: (Pair a, Pair b)=>Comparable.compare(a.value, b.value),
    isValid: (Pair v) => v.key!="b",
    limit: 2));
  
  map.addAll({
    "a": 3,
    "b": 2,
    "c": 4,
    "d": 1
  });
  
  print(map.keys); // (d, a)
  
}

Features and bugs

Please file feature requests and bugs at the issue tracker.