int array[] = new int[]{10, 11, 88, 2, 12, 9};
public static int getMax(int[] inputArray){
int maxValue = inputArray[0];
for(int i=1;i < inputArray.length;i++){
if(inputArray[i] > maxValue){
maxValue = inputArray[i];
}
}
return maxValue;
}
有什么办法可以找到最大值但小于数组中的88?
最佳答案
如果使用Integer
,则可以使用TreeSet
Integer[] values = new Integer[]{10, 11, 88, 2, 12, 9};
NavigableSet<Integer> integers = new TreeSet<>(Arrays.asList(values));
System.out.println(integers.lower(88));
System.out.println(integers.lower(2));
System.out.println(integers.lower(100));
打印出来
12
null
88
NavigableSet.lower(E e)
的Javadoc说:返回严格小于给定元素的该集合中最大的元素;如果没有这样的元素,则返回null。