簡體   English   中英

如何在Java數據結構中實現多個類別?

[英]How to implement multiple categories in a Java data structure?

我正在嘗試在 android 中為模擬送餐應用程序實現類別。

我想為餐廳設置類別,如漢堡、比薩等。每個類別中可能有任意數量的食品。 這些餐廳將包括 n 個類別。 我該如何實現這樣的事情?

目前,數據將被硬編碼到程序中,僅用於概念驗證,因此請不要包含數據庫,因為我仍在學習 android 並且對 SQLite 或 FireBase 等不太熟悉。

這取決於您要如何訪問數據。 您可以將Category FoodItem Enum並將其分配給FoodItem ,然后讓Restaurant具有FoodItems的ArrayList。

要么

您可以使用FoodItems的ArrayList來使Category為類,並讓Restaurant具有Categories的ArrayList。

根據您的概念,您似乎將集成任何Web API (REST或其他諸如Firebase)以從Web服務器獲取數據。

我建議執行以下操作:

  1. 創建一個.json文件 ,其中包含您可能需要顯示的內容。

  2. 制作一些與您需要解析的.json文件相關的模型數據類

  3. 現在,從Assets文件夾中臨時讀取.json文件,以充分利用內容(然后在應用程序中顯示)

這樣,如果您必須在不久的將來進行一些JSON解析 ,那么您已經擁有解析JSON所需的所有內容(例如您的數據傳輸對象DTO以及用於解析的代碼。

因此,那時,您要做的就是集成一些HTTP客戶端和設置端點,因為您已經在端進行JSON解析或使用Firebase進行了設置(其他東西已經處理完畢

EnumSet類可能會有所幫助。 這是存儲一組枚舉類型的值的有效方法。 鑒於該類提供了從1-5個任意元素創建此類集合的簡單工廠方法,因此它特別適合N <= 5 例:

public class Restaurant {

    enum FoodType { BURGER, PIZZA, RAMEN };

    private final EnumSet<FoodType> foodTypes;

    public Restaurant(FoodType type1, FoodType type2, FoodType type3) {
        foodTypes = EnumSet.of(type1, type2, type2);
    } 

    public Restaurant(FoodType... foodtypes) {
        // Various options
    }
}  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM