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说:
Returns the greatest element in this set strictly less than the given element, or null if there is no such element.
关于java - 查找数组中的最大值但必须小于某个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39511830/