java集合求和最大值最小值示例分享
发布时间:2022-10-11 04:15:10
package com.happyelements.athene.game.util;
import static com.google.common.base.Preconditions.checkNotNull;
import java.util.Collection;
import com.google.common.collect.Lists;
/**
* Math工具类
*
* @version 1.0
* @since 1.0
*/
public class MathUtil {
/**
* @see MathUtil#min(Collection)
* @param ts
* @return
*/
public static <T extends Comparable<T>> T min(T... ts) {
return min(Lists.newArrayList(ts));
}
/**
* 取最小值
* @param values
* @throws NullPointerException if (values == null || values.contain(null))
* @return
*/
public static <T extends Comparable<T>> T min(Collection<T> values) {
checkNotNull(values);
T min = null;
for (T t : values) {
checkNotNull(t);
if (min == null) {
min = t;
} else {
min = min.compareTo(t) < 0 ? min : t;
}
}
return min;
}
/**
* @see MathUtil#max(Collection)
* @param ts
* @return
*/
public static <T extends Comparable<T>> T max(T... ts) {
return max(Lists.newArrayList(ts));
}
/**
* 取最大值
* @param values
* @throws NullPointerException if (values == null || values.contain(null))
* @return
*/
public static <T extends Comparable<T>> T max(Collection<T> values) {
checkNotNull(values);
T max = null;
for (T t : values) {
checkNotNull(t);
if (max == null) {
max = t;
} else {
max = max.compareTo(t) > 0 ? max : t;
}
}
return max;
}
/**
* 求和
* @param values
* @throws NullPointerException if (values == null || values.contain(null))
* @return
*/
public static Integer sum(Collection<Integer> values) {
checkNotNull(values);
int sum = 0;
for (Integer integer : values) {
checkNotNull(integer);
sum += integer;
}
return sum;
}
/**
* @see MathUtil#sum(Collection)
* @param ts
* @return
*/
public static Integer sum(Integer... ts) {
return sum(Lists.newArrayList(ts));
}
}


猜你喜欢
- 如何解决某个节点故障的问题?如何解决数据一致性的问题?如何解决数据倾斜的问题?CAP理论先从定义开始:C(Consistence):一致性所
- Struct的理论看过好一些,可是工作上基本没有应用过,Class倒处处都有。难道Struct就没有什么使用价值吗?搜了一下如何在类和结构中
- 本文实例为大家分享了Unity实现Flappy Bird游戏的具体代码,供大家参考,具体内容如下参考:腾讯课程(零基础制作像素鸟) 环境:U
- 对于一个App的UI而言,在流畅性上的改进目标其实就是降低屏幕绘制的延迟,创建流畅和稳定的帧率以避免卡顿。在理想情况下,全部的测量、布局和绘
- 上次给一个网站写网站 前后端分离 最后跪在ajax跨域上面了 自己在网上找了个方法 亲试可用
- 通过URL来获取网络资源并下载资源简单实例:package com.android.xiong.urltest; import java.i
- 首先说明:如果没有进入调试模式的话,默认的调试窗口如下: 开始前的准备: 新建控制台程序DebugWindowDemo:修改Program.
- 向上转型:子类对象转为父类,父类可以是接口。公式:Father f = new Son();Father是父类或接口,son是子类。向下转型
- 前言任何一个服务如果没有监控,那就是两眼一抹黑,无法知道当前服务的运行情况,也就无法对可能出现的异常状况进行很好的处理,所以对任意一个服务来
- Android的遮罩效果就是把一张图片盖在另一张图片的上面,通过控制任意一张图片的显示百分比实现遮罩效果。下面我使用两张一样的图片来实现一个
- 1、在Hierarchy面板右键UI>Button2、创建一个空物体3、创建一个脚本 ButtonClick.cs,定义一个Click
- 根据数据库表名生成实体类公司用的jpa,没有用mybatis。所以也没有用mybatis自动生成。但有些数据库表字段太多,就想着一劳永逸了,
- 最近项目需要微信支付,然后看了下微信公众号支付,,虽然不难,但是细节还是需要注意的,用了大半天时间写了个demo,并且完整的测试了一下支付流
- Filter简介Filter也称之为过滤器,它是Servlet技术中最实用的技术,WEB开发人员通过Filter技术,对web服务器管理的所
- 原理:使用Popup控件,并且设置Popup控件的位置居中。1:新建自定义控件PopupBorder,作为Popup的child。代码如下:
- 本文实例为大家分享了Android端实现文件上传的具体代码,供大家参考,具体内容如下1)、新建一个Android项目命名为androidUp
- 一、图片预览:一、实现功能:需求要实现布局中为圆形图片,图片背景与图标分开且合并到一个ImageView。二、具体实现:XML中布局中定义I
- spring boot诞生的背景在spring boot出现以前,使用spring框架的程序员是这样配置web应用环境的,需要大量的xml配
- 抽象类(abstract):抽象类不能创建实例,它只能作为父类被继承。抽象类是从多个具体类中抽象出来的父类,它具有更高层次的抽象。从多个具有
- 1、创建Windows服务 说明:a)Description 服务描述,直接显示到Windows服务列表中的描述;b)Displa