搜索插件、代码仓与 APP 分类

插件详情v0.5.5

sortedmap

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

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
3.9万
喜欢数
43
Pub 分数
160

安装插件

flutter pub add sortedmap

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

SortedMap 是一个 Dart 包,通过根据键和值进行排序和过滤来扩展标准映射的功能。它提供了一种动态且类型安全的方式来管理键值对,同时根据用户定义的标准保持顺序。非常适合需要有序数据检索的应用程序,例如实时仪表板或数据分析工具,支持所有主要平台,包括 Android、iOS、Web、macOS、Windows 和 Linux。该包可通过 pub.dev 与 Flutter 项目无缝集成,并提供直观的 API,用于常见的操作,如过滤、映射和迭代已排序的条目。

适合场景

  • 实时数据仪表板
  • 有序数据存储
  • 动态过滤键值对
  • 数据分析应用
  • 用户界面状态管理
  • 高效排序大型数据集

主要特点

  • 按键或值排序
  • 动态过滤条目
  • 支持所有 Flutter 平台
  • 类型安全的操作
  • 扩展 Map 接口
  • 高效迭代和查找

适合对象

  • 需要有序映射的开发者
  • 具有实时数据更新的应用程序
  • 数据密集型应用
  • 寻求增强地图功能的 Flutter 开发人员
  • 需要灵活排序和筛选的项目

使用建议

  • 需要理解 Dart 泛型
  • 在非常大的数据集上可能会影响性能
  • 仅限内存存储
  • 不适合用于持久化存储需求
  • 依赖外部包的维护

原始 README

以下为关联源码仓库的 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.

所属分类

源码仓库

使用此插件的项目

暂无相关数据。

所在榜单