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。
添加回答
舉報