Есть метод для возведения числа в степень.
public static double raisedToPower(double a, double b) {
return Math.pow(a, b);
}
В результате вычисления метод может возвратить значения NaN и Infinity, что в свою очередь может поломать программу в точке вызова.
В моем понимании я должен обработать это внутри метода (Если NaN или Infinity, то возвратить ключ, который можно обработать вне метода). Вот в чём вопрос, что можно возвратить в качестве ключа или есть другой способ обработать данную ситуацию?
public static double raisedToPower(double a, double b) {
double res = Math.pow(a, b);
if (Double.isNaN(res) || Double.isInfinite(res)) {
return key;
}
return res;
}
В целом вы идею поняли верно, но интерпретировали неправильно.
NaN и Infitity - это уже и есть такой "ключ"
Рекомендую вызвать исключение и ловить его во вне:
if(Double.isNaN(res)){
throw(new Exception("NAN"));
}
else if(Double.isInfinite(res)){
throw(new Exception("INFINITE"));
}
Далее, в месте использования метода просто пишем обработчик исключения через try, catch, finally.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости