Ciao devo creare una classe Tavolo contente un arrayList<VoceDiMenu>; il problema mi chiede di creare un metodo VoceDiMenu[] Getordinazioni()... ho conevrtito quindi un ArrayList in un array usando il metodo toArray(T[]a) della classe arrayList..il problema è che non riesco a stampare tutti gli elementi dell'array:
codice:
import java.util.*;
class Tavolo{
ArrayList<VoceDiMenu> ordinazioni;
VoceDiMenu[] stringArray;
Tavolo(){
ordinazioni=new ArrayList<VoceDiMenu>();
}
public void aggiungi(VoceDiMenu m){
ordinazioni.add(m);
}
public void conto(){ //stampo tuttte le ordinazioni eed il prezzo totale;
int somma=0;
for(VoceDiMenu m: ordinazioni){
somma+=m.getprezzo();
}
System.out.println(Getordinazioni().toString());
System.out.println("ho speso in totale: "+somma+ " euro");
}
VoceDiMenu[] Getordinazioni(){
stringArray = ordinazioni.toArray(new VoceDiMenu[ordinazioni.size()]);
return stringArray;
}
public String toString(){
String h="";
for(int pos=0;pos<stringArray.length;pos++){
h+=stringArray[pos];
}
return h;
}
public static void main(String[] args){
Tavolo t=new Tavolo();
t.aggiungi(new Carne(2));
t.aggiungi(new Pesce(3));
t.aggiungi(new Carne(1));
t.conto();
}
}
Il compilatore stampa..una riga tipo [LVoceDiMenu;@c3c749 (non riconosce il toString()) e poi il prezzo totale...come faccio a stampare tutte le ordinazioni dal metodo VoceDiMenu[] Getordinazioni()?