Cafe Menu Implementation


Submit solution

Points: 10 (partial)
Time limit: 1.0s
Memory limit: 64M

Authors:
Problem type
Allowed languages
Java 19, Java 8

題目說明

請撰寫一個程式,完成咖啡廳飲料菜單的物件導向實作。

給定兩個類別:Drink(飲料)與 Cafe(咖啡廳),以及一個主程式 MyProgram

你必須在 Cafe 類別中填補三個挖空處((1), (2), (3)),以滿足以下條件:

挖空 (1)

在挖空 (1) 中:初始化 menu 陣列清單(ArrayList),並且呼叫 addSomeDrinks() 方法。

挖空 (2)

在挖空 (2) 中:依序新增以下三杯飲料至清單中:

  • "Americano",價格 60
  • "Latte",價格 80
  • "Mocha",價格 95
挖空 (3)

在挖空 (3) 中:宣告一個空字串,使用迴圈走訪 menu,將每杯飲料的資訊加上換行符號(\n)串接起來後回傳。

輸入值的格式

本題為程式碼填空,無標準輸入(Standard Input)。所有測試用的飲料資料已規定於題目說明中,請直接於 addSomeDrinks() 函式內完成物件實體化。

輸出值的格式

主程式已經寫好,會自動印出兩行歡迎詞與菜單內容。

你實作的 toString() 必須確保每杯飲料獨立一行,格式嚴格為:Drink: [飲料名稱], Price: [價格]

輸出完畢後請換行。

範例程式碼

import java.util.ArrayList;

class Drink {
    private String name; 
    private int price; 

    public Drink(String name, int price) {
        this.name = name;
        this.price = price;
    }

    public String toString() {
        return "Drink: " + name + ", Price: " + price;
    }
}

class Cafe {
    private ArrayList<Drink> menu; 

    public Cafe() {
        (1)
    }

    public void addSomeDrinks() {
        (2) 
    }

    public String toString() {
        (3)
    }
}

public class MyProgram {
    public static void main(String[] args) {
        Cafe myCafe = new Cafe();
        System.out.println("--- Welcome to Our Cafe ---");
        System.out.println("Our menu includes the following drinks:");
        System.out.print(myCafe); 
    }
}

測試資料

輸入

輸出
--- Welcome to Our Cafe ---
Our menu includes the following drinks:
Drink: Americano, Price: 60
Drink: Latte, Price: 80
Drink: Mocha, Price: 95

Comments

There are no comments at the moment.