首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Max

what is max ?

帮助不善于使用lambda的开发者,进行高效的集合处理的工具类。

那么为什么叫max? 因为最近越发的喜欢《破产姐妹》里面的max了。

use case

创建一个包含10个元素的自然数列 `Collection list1 = CollectOperator.createIntsWithRange(10);` 输出结果 `[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]`

同样可创建自己想要的数列,例如偶数 `Collection list2 = CollectOperator.createIntsWithRange(0,2,10);` 输出结果 `[2, 4, 6, 8, 10, 12, 14, 16, 18, 20]`

将上述两个数列进行求和计算 `CollectOperator.plus(list1,list2)` 输出结果 `[3.0, 6.0, 9.0, 12.0, 15.0, 18.0, 21.0, 24.0, 27.0, 30.0]` 这里默认会取数列最小的集合进行运算,结果为浮点型

如果上述案例的数列不一致,改如何处理? `CollectOperator.plus(CollectOperator.createIntsWithRange(10),CollectOperator.createIntsWithRange(0,2,15),true,1,1);` 将两个不同长度的序列进行加法,需要额外附加3个参数,ture/false 表示是否取最小集合,如果为false,后续2个参数无效,计算取最小集合,计算效果和上述案例相似,如果设置为true,则在计算的时候,不足的元素,按左右位置取默认值填充进行计算。

将一个集合按索引生成键值对

```

//创建序列

List values = Arrays.asList("USA", "Japan", "France", "Germany", "Italy", "U.K.","Canada");

//构建键值对

//Map map = CollectOperator.mergeToIndexMap(values);

```

输出结果 ``

6. 将两个序列,对位匹配成键值对

```

//创建键序列

List keys = Arrays.asList(10);

//创建值序列

List values = Arrays.asList("USA", "Japan", "France", "Germany", "Italy", "U.K.","Canada");

//构建键值对

Map map = CollectOperator.mergeToMap(keys,values,true);

```

输出结果``

TODO

- [ ] 集合其他运算操作

- [ ] 创建矩阵

- [ ] 封装数据类型

links

[码云](https://gitee.com/dafei1288/max)

[github](https://github.com/dafei1288/max)

(TBD...)

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180207G0HSGG00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券