Как получить значения из массива, возвращаемого методом - PullRequest
0 голосов
/ 17 июня 2020

Моя задача создать симулятор кофемашины, используя методы. Правила заключаются в том, что в автомате изначально есть ингредиенты, и пользователь может покупать кофе, заполнять его ингредиентами или снимать с него деньги. Программа должна отображать текущее состояние машины, запрашивать у пользователя действие, которое он хочет, выполнять действие, а затем отображать состояние машины после действия. Я решил, что мне нужно использовать непустые методы, а поскольку метод может возвращать только одну переменную, я выбрал массив в качестве возвращаемого значения. Но я не знаю, как использовать этот массив для отображения измененных ингредиентов после действия, выполненного пользователем. Банкомат Я выполнил вариант покупки, когда я найду решение, остальные действия должны быть намного понятнее. Итак, вот что у меня получилось:

import java.util.Scanner;

public class CoffeeMachine {
    public static void main(String[] args) 
{



            int waterAmount = 400;
            int milkAmount = 540;
            int beansAmount = 120;
            int cupsAmount = 9;
            int money = 550;

            systemCheck(waterAmount, milkAmount, beansAmount, cupsAmount, money);

            System.out.println("Write action (buy, fill, take): ");
            String action = input.next();
            switch (action){
                case "buy":
                    buyDrink(waterAmount, milkAmount, beansAmount, cupsAmount, money);
                    break;
                case "fill":
                    fillMachine();
                    break;
                case "take":
                    getCash();
                    break;
                default:
                    System.out.println("Wrong choice!");
            }

            systemCheck(waterAmount, milkAmount, beansAmount, cupsAmount, money);





        }
        public static void systemCheck(int water, int milk, int beans, int cups, int money){
            System.out.println("The coffee machine has: ");
            System.out.println(water + " of water");
            System.out.println(milk + " of milk");
            System.out.println(beans + " of coffee beans");
            System.out.println(cups + " of disposable cups");
            System.out.println(money + " of money");
        }



        public static int[] buyDrink(int water, int milk, int beans, int cups, int money){
            Scanner in = new Scanner(System.in);
            System.out.println("What do you want to buy? 1 - espresso, 2 - latte, 3 - cappuccino: ");
            int choice = in.nextInt();
            switch (choice) {
                case 1:
                    if (water >= 250 && beans >= 16 && cups > 0){
                        water = water - 250;
                        beans = beans - 16;
                        money = money + 4;
                        cups = cups - 1;
                    }else
                        System.out.println("Not enough ingredients, fill the machine please");
                    break;
                case 2:
                    if (water >= 350 && milk >= 75 && beans >= 20 && cups > 0){
                        water = water - 350;
                        milk = milk - 75;
                        beans = beans - 20;
                        money = money + 7;
                        cups = cups - 1;
                    } else
                        System.out.println("Not enough ingredients, fill the machine please");
                    break;
                case 3:
                    if (water >= 200 && milk >= 100 && beans >= 12 && cups > 0){
                        water = water - 200;
                        milk = milk - 100;
                        beans = beans - 12;
                        cups = cups - 1;
                    } else
                        System.out.println("Not enough ingredients, fill the machine please");
                    break;
                default:
                    System.out.println("Wrong choice!");

            }
            return new int[] {water, milk, beans, money, cups};
        }
        public static void fillMachine(){

        }
        public static void getCash(){

        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...