-
Notifications
You must be signed in to change notification settings - Fork 0
Conversation
Создан класс Calculator, который посчитывает общую введенную сумму товаров, делит её на равные части по количеству персон, а также определяет написание слов рубль и копейка в зависимости от введенной стоимости. Создан класс ItemsBasket, который включает все в себя всю корзину введенных товаров за время рабоыт программы.
src/main/java/Main.java
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Если ты используешь класс как утилиту со статическими методами, то ее не нужно инстанциировать. Относится к ItemsBasket и Calculator
src/main/java/ItemsBasket.java
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Лучше убрать
src/main/java/Main.java
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
У Scanner есть удобный метод hasNextInt, можно сразу узнать без дополнительных проверок возможно ли интерпретировать строку как int
Тогда достаточно будет сделать бесконечный цикл while(true) выход из которого осуществим только после получения правильного количества
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Лучшее переиспользовать инстанс сканнера, а не создавать каждый раз новый.
src/main/java/Main.java
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
У Scanner есть удобный метод hasNextFloat, можно сразу узнать без дополнительных проверок возможно ли интерпретировать строку как float
Точно также как и с int, достаточно будет бесконечного цикла с условием выхода - прочтение правильного числа
src/main/java/Calculator.java
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
На самом деле по заданию достаточно определять окончание только для рублей
src/main/java/Calculator.java
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Тут инициализация значением не обязательна
src/main/java/Calculator.java
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Можно else тут сделать, остальные варианты предусмотрели ранее
src/main/java/Calculator.java
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Можно брать остаток от деления на 100 в данном случае, нагляднее имхо
src/main/java/Calculator.java
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А тут на 10
gusar-off
commented
Dec 4, 2022
Есть еще замечания по код стилям, в Android студии можно сделать авто форматирование нажав ПКМ по нужному классу и выбрав Reformat code, или нажать сочетание клавиш из соответствующего пункта в меню.
image
Пройдись по всем классам с автоформатированием
nsuhover
commented
Dec 6, 2022
via email
- убраны лишние инициализации значениями; - в классе Calculator поиск последней цифры и двух цифр изменены на остаток деления от 100 и 10 соответственно; - сокращена логика определения окончания слова "рубль", убрана логика по определению копеек, т.к. не требовалось по ТЗ; - убран стандартный пустой конструктор ItemsBasket; - убрана инициализация статических методов из классов ItemsBasket и Calculator; - для обработки ошибок ввода пользователя заменена логика с try catch на hasNextInt и hasNextFloat;
Сдаю проектную работу No1