3 回答
TA贡献1815条经验 获得超10个赞
您可以使用方法重载。
public double proximitySensorAdjusted(int value) {
double finalValue;
if(value == -1) {
finalValue = adjustment;
} else {
finalValue = value + adjustment;
}
return finalValue;
}
public double proximitySensorAdjusted() {
return proximitySensorAdjusted(-1); //call with some default value
}
现在您可以调用sensorValue.proximitySensorAdjusted();.
TA贡献1828条经验 获得超13个赞
您可以使用选项,这与简单地重载您的函数没有什么不同,正如这里建议的另一个答案。
public class proximitySensor {
double adjustment = 5;
public double proximitySensorAdjusted(Optional<Integer> value) {
double finalValue = value.map(v -> v + adjustment)
.orElseGet(() -> {
... // Do something intelligent here
});
return finalValue;
}
}
现在您使用以下命令调用该函数:
sensorValue.proximitySensorAdjusted(Optional.empty());
作为旁注,Java 中类名的命名约定是Capitalized,因此您的proximitySensor类应该被称为ProximitySensor。
添加回答
举报