6
Zrobiłem stos i ArrayList do badań. Właściwie chcę teraz, aby mój Stack został zastąpiony przez ArrayList, ale jak przekształcić Stack w ArrayList? Jak idzie z push, pop ...?Stos do -> ArrayList Java
Dziękuję
public static ArrayList<State> search(State finalstate)
{
ArrayList<State> toreturn = new ArrayList<State>();
Stack<State>mystack=new Stack<State>();
mystack.push(initState);
State currState;
currState=initState;
while(!mystack.isEmpty() && !currState.equals(finalstate))
{
currState=mystack.pop();
toreturn.add(currState);
if(currState.vecinos.containsKey("up"))
{
mystack.push(currState).vecinos.get("up");
}
if(currState.vecinos.containsKey("down"))
{
mystack.push(currState).vecinos.get("down");
}
if(currState.vecinos.containsKey("left"))
{
mystack.push(currState).vecinos.get("left");
}
if(currState.vecinos.containsKey("right"))
{
mystack.push(currState).vecinos.get("right");
}
}
return toreturn;
}
Dobrze 'pop' usuwa elementy z' Stack' i 'push' dodaje przedmiotów do "stosu". Dlaczego dodajesz elementy do 'Stack' podczas kopiowania do' List'? Co chcesz umieścić na liście 'List' po zakończeniu metody? –
Tylko po to, aby zachować ich ślad na Liście – maevy
tylko po to, aby zachować utwór * przepraszam – maevy