热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Dart区间运算库重磅发布!

Dart区间运算库重磅发布!-重磅发布是开个玩笑,其实就是自己在写代码的过程中需要区间运算,但是发现并没有趁手的库,那就直接撸一个轮子吧。依赖库:pub.devpacka

重磅发布是开个玩笑,其实就是自己在写代码的过程中需要区间运算,但是发现并没有趁手的库,那就直接撸一个轮子吧。

依赖库:

pub.dev/packages/da…

安装依赖

如果是 Dart 项目,执行以下命令:

dart pub add dart_interval

如果是 Flutter 项目,则可以执行:

flutter pub add dart_interval

或者直接在项目的 pubspec.yaml 文件中添加下面的内容:

dependencies:
  dart_interval: ^0.1.1

特性
  • Interval - 提供区间的数据结构
  • IntervalSet - 提供多个区间的合并操作
  • & | - 支持区间的交集、并集运算

如何使用

创建一个区间

import 'package:dart_interval/dart_interval.dart';

final v1 = Interval.between(1, 3, lowerClosed: false, upperClosed: false);

可以使用 Interval.between 方法来创建一个区间。还有两个可选参数,分别代表区间的左右开闭

合并多个区间

final v1 = Interval.between(1, 3);
final v2 = Interval.between(2, 5);
final v3 = Interval.between(7, 9);
final set = IntervalSet([v1, v2, v3]);
print(set);
// output: [1, 5],[7, 9]

可以使用 IntervalSet 来合并多个区间。

区间之间做交集运算

print(v1 & v2);
// output: [2, 3]

Interval 重载了 &| 操作符,可以直接用来进行交集运算或者并集运算。

区间之间做并集运算:

print(v1 | v2);
// output: [1, 5]

或者

print(IntervalSet([v1, v2]));
// output: [1, 5]

最后

Github 地址:github.com/T-Oner/dart…


推荐阅读
author-avatar
萱筱璧
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有