大学IT网 - 最懂大学生的IT学习网站! QQ资料交流群:367606806
当前位置:大学IT网 > Java技巧 > 数组取最大值最小值

数组取最大值最小值

关键词:Java数组数组取最大值最小值  阅读(1212) 赞(12)

[摘要]本文主要是对数组取最大值最小值的讲解,希望对大家学习数组取最大值最小值有所帮助。

  1、数组取出最大值,最小值的方式

  第一种、

  遍历一边数组就可以找出需要的值,基本上可以说是速度最快的算法,还不需要排序

  int [] intArray = {1,3,2,4,2,5,2,6,45,7,5,86,5,45,3,867} ;

  int max = intArray[0];

  int min = intArray[0];

  for (int i : intArray) {

  max = max>i?max:i;

  min = min<i?min:i;

  }

  System.out.println(max+"-----"+min);//返回的最大值和最小值

  第二种、

  先排序,在取最大最小值

  Arrays.sort(intArray.clone());//clone的目的是因为数组本身也是个对象,不想改变它本身的顺序,当然,要是顺序没什么用处,也可以不clone

  System.out.println(intArray[intArray.length-1]);//最大值

  System.out.println(intArray[0]);//最小值

  其实在秦老师的书里,另外我自己也测试了,在1w条数据之内,这两种方法是差不多的,可以说事几乎一样的,

  2、取出数组第二大值的方式、

  这个就要想想了,第二大致不可以能一个,所以位置上取就不太如意了

  treeSet  是可以实现删除重复的、

  Integer [] intArray = {1,3,2,4,2,5,2,6,45,7,5,86,5,45,3,867} ;

  List<Integer> l = Arrays.asList(intArray);

  TreeSet<Integer> tl = new TreeSet<Integer>(l);

  System.out.println(tl.lower(tl.last()));//比最大值小的值



相关评论