Dart 区间运算库重磅发布!

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

依赖库:

dart_interval https://pub.dev/packages/dart_interval

安装依赖

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

dart pub add dart_interval

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

flutter pub pub add dart_interval

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

dependencies:
  dart_interval: ^0.1.1

特性

如何使用

创建一个区间

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 地址:https://github.com/T-Oner/dart_interval

Responses