我的Maraton课看起来像这样:
public class Maraton implements IMaraton {
private Atleticar[] niza;
public Maraton(Atleticar[] niza) {
super();
this.niza = niza;
}
然后我将Atleticar归类为:
public class Atleticar{
private double vreme;
public double getVreme() {
return vreme;
}
public void setVreme(double vreme) {
this.vreme = vreme;
}
我想在Maraton中使用make函数,使我得到最短的“ vreme”。 我很难实现这种方法,因为我是Java新手。任何意见,将不胜感激。提前Tnx。
答案 0 :(得分:2)
您可以遍历数组并找到所有值中的最短值。
#!/bin/bash
OUTPUT="$(pmset -g | grep hibernatemode)"
HIBERNATE3=" hibernatemode 3"
HIBERNATE25=" hibernatemode 25"
if [ "$OUTPUT" = "$HIBERNATE3" ]
then
pmset -b hibernatemode 25
echo Hibernatemode set to 25 - DISK
elif [ "$OUTPUT" = "$HIBERNATE25" ]
then
pmset -b hibernatemode 3
echo Hibernatemode set to 3 - RAM
else
echo Unsuccessful!
fi
答案 1 :(得分:1)
这个想法很简单:您必须遍历数组以计算最小的元素。
但这似乎是函数式编程的一个很好的用例:
OptionalDouble min =
Arrays.stream(niza)
.mapToDouble(Atleticar:getVreme)
.min();
然后根据您的要求处理OptionalDouble
状态。
答案 2 :(得分:0)
您可以执行以下操作:
public Atleticar getFastestOne(){
Optional<Atleticar> optAtleticar = Arrays.stream(niza).min(Comparator.comparing(Atleticar::getVreme));
if(optAtleticar.isPresent()){
return optAtleticar.get();
}
return null;
}
答案 3 :(得分:0)
类似这样的东西:
public static int getMinVreme(int[] array) {
int minValue = array[0].getVreme;
for (int i = 1; i < array.length; i++) {
if (array[i].getVreme < minValue) {
minValue = array[i].getVreme;
}
}
return minValue;
}
应该为您工作。