crazylMedlem sedan jan. 200232 inlägg
Hej! Hur visar jag innehållet på det som returneras från följande funktion? Är det möjligt när man använder Collection, måste jag göra om den till en ArrayList? Hur skriver jag i sådana fall?
Collection granne = pasture.getEntitiesAt(neighbour);
public Collection<Entity> getEntitiesAt(Point lookAt)
{
Collection<Entity> l = grid.get(lookAt);
if (l==null)
{
return null;
}
else
{
return new ArrayList<Entity>(l);
}
}
MVH :OO
pettssonMedlem sedan jan. 2002777 inlägg
Nu har jag inte använt generics, så jag är inte helt säker på att detta funkar, men Collection har metoden iterator() som returnerar en iterator som du sedan kan stega dig igenom såhär:
Collection a = getEntitiesAt(b);
Iterator i = a.iterator();
Entity e;
while(i.hasNext()) {
e = i.next();
System.out.println(e.toString());
}
Lägg till applikationsspecifik kod på ovanstående.
juventus1Medlem sedan dec. 2000401 inlägg
Eller med den nya snygga loopen:
Collection<Entity> c = getEntitiesAt(b);
for (Entity e : c)
System.out.println(e);
pettssonMedlem sedan jan. 2002777 inlägg
Men varför göra det lätt för sig... :OO (Man kanske skulle ta och lära sig de nya grunkorna i 1.5, verkar ju som om det skulle kunna vara användbart ;) )