Conversation
| stopEnterProduct = true; | ||
| } else { | ||
| // Пользователь вводит стоимость товара для подсчета | ||
| while (!stopEnterPrice){ |
There was a problem hiding this comment.
Также можно сделать бесконечный цикл
| continue; | ||
| } | ||
| Product product = new Product(productName, productPrice); | ||
| calculator.addProduct(product); |
There was a problem hiding this comment.
Можно добавлять в список сразу при добавлении в список:
calculator.addProduct(new Product(productName, productPrice));
| // Пользователь вводит наименование и стоимость товара для подсчета | ||
| boolean stopEnterProduct = false; | ||
| boolean stopEnterPrice = false; | ||
| while (!stopEnterProduct){ |
There was a problem hiding this comment.
Можно ещё сделать бесконечный цикл while(true), а в if(productName.equalsIgnoreCase("завершить")) выходить из цикла при помощи break. Тогда отпадет необходимость дальнейшие действия заворачивать в else + не будем создавать дополнительную переменную stopEnterProduct.
| else if (Math.floor(sumToPay) == 2 || Math.floor(sumToPay) == 3 || Math.floor(sumToPay) == 4) | ||
| System.out.println(String.format("Каждый должен заплатить по %.2f рубля",sumToPay)); | ||
| else | ||
| System.out.println(String.format("Каждый должен заплатить по %.2f рублей",sumToPay)); |
There was a problem hiding this comment.
Строка ""Каждый должен заплатить по %.2f" встречается несколько раз в программе, имеет смысл вынести её в отдельную переменную и затем к ней прибавлять рубли в нужном виде. Основное преимущество такого подхода - при необходимости поменять текст надо будет поменять только текст в переменной без риска что-нибудь забыть
| } | ||
| } | ||
| } | ||
| System.out.println("Добавленные товары:"); |
There was a problem hiding this comment.
Имеет смысл выносить такие большие логические фрагменты в отдельные методы по примеру метода getPersonNumber(). Это делает программу больше удобочитаемой, когда разнородная логика не смешивается в один сплошной код.
| totalPrice += item.price; | ||
| cart = cart + "\n" + item.name; | ||
| public void addProduct(Product product){ | ||
| this.sum = this.sum + product.getPrice(); |
There was a problem hiding this comment.
Можно ещё обойтись без this. (хотя и такие варианты встречаются), а также использовать конструкцию sum += product.getPrice();
No description provided.