2016-03-31 12 views
0

Kodda zaten oluşturulmuş nesneler olmasını istiyorum, böylece her nesneyi oluşturmak zorunda kalmam ama bunları bir dizi listesine nasıl ekleyeceğimi bilmiyorum Bugüne kadar ne var: kod içinde nesneler oluşturun ve arraylist'e ekleyin, BlueJ

public class MenuItem 
{  
    private String foodName; 
    private String foodType; 
    private float price; 
    private int calories;  


    public MenuItem(String nameFood, String typeFood, float foodPrice, int caloryCount) 

    {  
    foodName = nameFood; 
    foodType = typeFood; 
    price = foodPrice; 
    calories = caloryCount; 

    } 

Bu kurmuştu ama bu yüzden zaten o halde ben tüm yapmanız gereken ilave tüm farklı menü türlü bir sınıf var bunu değiştirmek için gidiyorum bunları ekleyin Bir Dizi Listesine ancak bunu nasıl yapacağınızdan emin değilim, sadece bunu göstererek Dizilim Listesine eklemeyi planladığım hakkında bir fikre sahip olabilirsiniz.

cevap

0

soruyorsan MenuItem için sınıflandırma:

class MenuItem 
{ 
    //your class implementation 
} 

class SubMenuItem extends MenuItem 
{ 
    //your class implementation  
} 

ArrayList<MenuItem> list = new ArrayList<MenuItem>(); 
list.add(new MenuItem(foodName, foodType, price, calories)); 
list.add(new SubMenuItem(/*your arguments*/)); 
0

Bunun gibi statik bir Listeyi mi kastediyorsunuz? Eğer alt oluşturmak istiyorsanız

list.add(new MenuItem(foodName, foodType, price, calories)); 

:

AraryList<MenuItem> list = new ArrayList<MenuList>(); 

Menuıtem listenize nesneleri eklemek için: Eğer MenuItem sınıf için bir ArrayList oluşturma hakkında

public class Main { 

    public static final List<MenuItem> items; 

    static { 
     items = new LinkedList<>(); 
     items.add(new MenuItem("Steak", "Meat", 13.50f, 378)); 
     items.add(new MenuItem("Bread", "Grain", 2.50f, 79)); 
     items.add(new MenuItem("Rice", "Grain", 4.50f, 206)); 
    } 
} 
+0

Evet, sadece bir liste yerine bir dizi listesi kullandım çünkü onları kodlamak yerine UI'dan daha fazla öğe ekleyebilmek için gelecekte değiştireceğim –

İlgili konular