#304 Код-ревью класса клиентского счета
Сделать код-ревью:
public class SchetClienta {
public LinkedList<Double> history;
SomeCurrencyExchangeService service;
public SchetClienta(LinkedList<Double> initial) {
this.history = initial;
this.service = new SomeCurrencyExchangeService();
}
public void setPurchases(Double money) {
history.add(money);
}
public boolean equals(Object o) {
if (this == o) {
return true;
}
SchetClienta other = (SchetClienta) o;
return history == other.history;
}
Double transferToTheCurrency(String currency) {
AtomicReference<Double> sum = new AtomicReference<>(0.0);
try {
history.forEach(it -> {
Double converted = service.getValueForCurrency(CurrencyEnum.valueOf(currency), it);
sum.accumulateAndGet(converted, Double::sum);
});
return sum.get();
} catch (Throwable t) {
return 0.0;
}
}
}Разбор вопроса
Войди, чтобы начать диалог
Ментор ведёт диалог по текущему вопросу и учитывает предыдущие сообщения.
Войти
Доступно с Premium
Это лишь одно из решений, доступных с Premium. А ещё:
- 250+ продвинутых лекций
- 1300+ практических заданий
- 500+ решений задач с реальных собеседований
- Именные сертификаты Java Hub
- Расширенный доступ к AI-ментору