数组取出最大值最小值的方式 第一种 遍历一边数组就可以找出需要的值基本上可以说是速度最快的算法还不需要排序 int [] intArray = {} ; int max = intArray[]; int min = intArray[]; for (int i : intArray) { max = max>i?max:i; min = min<i?min:i; } Systemoutprintln(max++min);//返回的最大值和最小值 第二种 先排序在取最大最小值 Arrayssort(intArrayclone());//clone的目的是因为数组本身也是个对象不想改变它本身的顺序当然要是顺序没什么用处也可以不clone Systemoutprintln(intArray[intArraylength]);//最大值 Systemoutprintln(intArray[]);//最小值 其实在秦老师的书里另外我自己也测试了在w条数据之内这两种方法是差不多的可以说事几乎一样的 取出数组第二大值的方式 这个就要想想了第二大致不可以能一个所以位置上取就不太如意了 treeSet 是可以实现删除重复的 Integer [] intArray = {} ; List<Integer> l = ArraysasList(intArray); TreeSet<Integer> tl = new TreeSet<Integer>(l); Systemoutprintln(tllower(tllast()));//比最大值小的值 |