Skip to content

Задание готово, все работает - #1

Open
ProjectKredos wants to merge 6 commits into
devfrom
main
Open

ProjectKredos wants to merge 6 commits into
devfrom
main

Conversation

@ProjectKredos

Copy link
Copy Markdown
Owner

Задание готово

@SeveNChaK SeveNChaK left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

В некоторых файлах отступы не одинаковые - рекомендую использовать встроенные форматтер. Если ты программируешь в IDE от JetBrains, то можешь пройтись по всем файлам и нажать комбинацию (Windows: Shift + Ctrl + Alt + L, MacOS: Shift + Option + Command + L), затем выбрать, какую часть кода хочешь изменить, и выполнить команду. Среда разработки автоматически сделает нужные отступы и переносы (как она это делает можно изменить в настройках, но дефолтные значения вполне нормальные).

Comment thread src/main/java/goods.java Outdated
@@ -0,0 +1,36 @@
import java.util.Scanner;

public class goods {

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⏫ Название классов принято писать с большой буквы

Comment thread src/main/java/Main.java Outdated
Scanner scanner = new Scanner(System.in);
System.out.println("На скольких человек необходимо разделить счёт?");
while (true) {
countUser = scanner.nextInt();

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Не хватает проверки на не корректный ввод, например, если введут буквы.

Comment thread src/main/java/goods.java Outdated
System.out.println("Введите цену товара");
goodsPrice = scanner.nextDouble();
System.out.println("Товар " + goodsName + " за " + goodsPrice + " " + rubToText(goodsPrice) + " успешно добавлен. Добавьте еще или завершите." );
goodsList = goodsList + "\n" + goodsName + " " + goodsPrice;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⏫ Так как String - неизменяемый класс, при каждом сложении строк создается новый экземпляр строки. А так как ты не ведешь список товаров, а сразу плюсуешь все в строку, то у тебя будет создавать очень много объектов строковых. Для таких ситуаций лучше использовать StringBuilder.
Про стринг билдер

Comment thread src/main/java/goods.java Outdated
goodsName = scanner.next();
if (goodsName.equalsIgnoreCase("Завершить") ) {break;}
System.out.println("Введите цену товара");
goodsPrice = scanner.nextDouble();

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Так как нет проверки на то что вводится, при вводе букв приложение упадет

Comment thread src/main/java/goods.java Outdated

public static String rubToText(double sumRub){
if (sumRub<2) { return("рубль");
} else if (sumRub>5) { return("рублей");

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Для чисел больше 20, которые оканчиваются на 1-4 здесь используется не правильное склонение - "рублей"

1) Корректность склонения "Рубли";
2) Использован String Bilder;
3) Добавлены проверки:
- Ввод текста вместо цифр
- Ввод отрицательных цен
4) Выровнен код через Ctrl + Alt + Shift + L
5) Исправлено написание классов "С большой буквы"
1) Корректность склонения "Рубли";
2) Использован String Bilder;
3) Добавлены проверки:
- Ввод текста вместо цифр
- Ввод отрицательных цен
4) Выровнен код через Ctrl + Alt + Shift + L
5) Исправлено написание классов "С большой буквы"
Исправлены:
1) Корректность склонения "Рубли";
2) Использован String Bilder;
3) Добавлены проверки:
- Ввод текста вместо цифр
- Ввод отрицательных цен
4) Выровнен код через Ctrl + Alt + Shift + L
5) Исправлено написание классов "С большой буквы"
Исправлены:
1) Корректность склонения "Рубли";
2) Использован String Bilder;
3) Добавлены проверки:
- Ввод текста вместо цифр
- Ввод отрицательных цен
4) Выровнен код через Ctrl + Alt + Shift + L
5) Исправлено написание классов "С большой буквы"
Исправлены:
1) Корректность склонения "Рубли";
2) Использован String Bilder;
3) Добавлены проверки:
- Ввод текста вместо цифр
- Ввод отрицательных цен
4) Выровнен код через Ctrl + Alt + Shift + L
5) Исправлено написание классов "С большой буквы"
Comment thread src/main/java/Goods.java
if (priceScanner.hasNextDouble()) {
goodsPrice = priceScanner.nextDouble();
if (goodsPrice < 0) {
goodsPrice = Math.abs(goodsPrice);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Мне кажется, что лучше было бы выводить ошибку и просить повторить ввод. Но это уже так, на поразмышлять)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants