java集合求和最大值最小值示例分享

代码如下:

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));
 }

}

(0)

相关推荐

  • java 获取一组数据中的最大值和最小值

    话不多说,请看代码: public static void main(String[] args) { int array[]={2,4,3,9,1,6,8,5,23}; int max=array[0],min=array[0]; for(int i=0;i<array.length;i++){ if(array[i]>max){ max=array[i]; } } for(int i=0;i<array.length;i++){ if(array[i]<min){ min=ar

  • java求数组最大值和最小数示例分享

    复制代码 代码如下: /** * 判断数组中的最大数 * @param args * @return */public static int getMaxNum(int args[]){int max=0;for(int i=0;i<args.length;i++){if(args[i]>args[max])max=i;}return args[max];} /** * 判断数组中的最小数 * @param args * @return */public static int getMinNu

  • JAVA得到数组中最大值和最小值的简单实例

    今天本文与大家分享如何得到数组中的最大值和最小值的实例.很适合Java初学者复习数组的基本用法与流程控制语句的使用.具体如下: 这个程序主要是求得数组中的最大值和最小值 public class TestJava4_3 { public static void main(String args[]) { int i,min,max; int A[]={74,48,30,17,62}; // 声明整数数组A,并赋初值 min=max=A[0]; System.out.print("数组A的元素包括

  • java求三个数的最大值的示例分享

    复制代码 代码如下: import java.util.Arrays; import java.util.Scanner; public class MaxOf3_2 { /* * 获取最大的整数 */     public static int getMaxNum(int...a){         Arrays.sort(a);         int maxNum = a[a.length-1];         return maxNum;     } }

  • Java获取一维数组的最小值实现方法

    编写程序,实现接受用户在文本框中输入的单行数据.这些数据都是整数数字,以空格进行分隔,空格数量不限.并将这些数据分割成一维数组,再从数组中提取最小值显示在界面中.思路是先对用户的输入进行验证,即先用trim()函数过滤用户输入字符串的左右空格,若结果为空字符串则用JOptionPane类的showMessageDialog方法提示用户"请输入数字内容".若用户输入非空则使用charAt函数对用户输入字符串中的每一个字符进行判断,若其既非数字也非空格则提示"输入包含非数字内容&

  • java利用数组求平均值,最大值,最小值

    复制代码 代码如下: (测试类)    package com.badu; public class Tste { public static void main(String[] args) {          Class5 sa=new Class5("周阿郎",3,2,24);          Class5 [] a=new Class5[5];          a[0]=new Class5("张扬",2,4,34);           a [1]=

  • java集合求和最大值最小值示例分享

    复制代码 代码如下: 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 M

  • java去除集合中重复元素示例分享 java去除重复

    复制代码 代码如下: class ArrayListTest1 {    public static void main(String[] args) {        ArrayList al = new ArrayList();        al.add("java03");        al.add("java03");        al.add("java01");        al.add("java02")

  • java的nio的使用示例分享

    Java NIO(New Input/Output)--新的输入/输出API包--是2002年引入到J2SE 1.4里的.Java NIO的目标是提高Java平台上的I/O密集型任务的性能.过了十年,很多Java开发者还是不知道怎么充分利用NIO,更少的人知道在Java SE 7里引入了更新的输入/输出 API(NIO.2).NIO和NIO.2对于Java平台最大的贡献是提高了Java应用开发中的一个核心组件的性能:输入/输出处理.不过这两个包都不是很好用,并且它们也不是适用于所有的场景.如果能

  • java使用xpath解析xml示例分享

    XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言.XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力.起初 XPath 的提出的初衷是将其作为一个通用的.介于XPointer与XSL间的语法模型.但是 XPath 很快的被开发者采用来当作小型查询语言. XPathTest.java 复制代码 代码如下: package com.hongyuan.test; import java.io.File;import java

  • java模拟hibernate一级缓存示例分享

    纯Java代码模拟Hibernate一级缓存原理,简单易懂. 复制代码 代码如下: import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map; public class LevelOneCache { //这个对象就是用来模拟hibernate一级缓存的 private static Map<Integer, Student> stus=new HashMap&l

  • java判断回文数示例分享

    判断一个数是不是回文数示例,回文数就是原数与其倒置后的数相等,如:123321,到之后仍为123321,即为回文数 题目:一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同. /** * 判断一个数是不是回文数,回文数就是原数与其倒置后的数相等 * 如:123321,到之后仍为123321,即为回文数 * @author lvpeiqiang */ public class HuiWenShu { public boolean isHuiWenShu(int n

  • java打印当前方法名示例分享

    在C与C++中可以这样打印当前函数名: 复制代码 代码如下: printf("%s",__func__); 但在Java没有此说法,一切即对象,得从某个对象中去获取,可分为两种方式: 第一种:通过Thread类来获取. 复制代码 代码如下: System.out.println(Thread.currentThread().getStackTrace()[1].getMethodName());System.out.println(Thread.currentThread().getS

  • java使用des加密解密示例分享

    复制代码 代码如下: import java.security.Key;import java.security.SecureRandom;import java.security.spec.AlgorithmParameterSpec; import javax.crypto.Cipher;import javax.crypto.SecretKeyFactory;import javax.crypto.spec.DESKeySpec;import javax.crypto.spec.IvPar

  • java使用jdbc操作数据库示例分享

    package dao; import java.sql.*; public class BaseDao { //oracle// private  static final String Dirver="oracle.jdbc.driver.OracleDriver";// private  static final String URL="jdbc:oracle:thin:@localhost:1521:XE";// private  static final

随机推荐