Hallo,
ich habe einen Stack namens calcMemory, auf den ich mit calcMemory.Push() Zahlen lege. Ich würde erwarten, dass meine ToString-Methoden links die unterste Zahl schreibt, rechts die oberste.
calcMemory.Push(1);
calcMemory.Push(2);
calcMemory.Push(3);
calcMemory.Push(4);
sollte also als [1 | 2 | 3 | 4] ausgegeben werden.
(Derselbe Code in Java liefert mir auch dieses Ergebnis.)
Stattdessen fügt der Stack Objekte ganz am Anfang ein, die Ausgabe lautet also [4 | 3 | 2 | 1].
Funktioniert in C# ein Stack anders, als in Java?
ich habe einen Stack namens calcMemory, auf den ich mit calcMemory.Push() Zahlen lege. Ich würde erwarten, dass meine ToString-Methoden links die unterste Zahl schreibt, rechts die oberste.
calcMemory.Push(1);
calcMemory.Push(2);
calcMemory.Push(3);
calcMemory.Push(4);
sollte also als [1 | 2 | 3 | 4] ausgegeben werden.
(Derselbe Code in Java liefert mir auch dieses Ergebnis.)
Stattdessen fügt der Stack Objekte ganz am Anfang ein, die Ausgabe lautet also [4 | 3 | 2 | 1].
Code:
public string ToString()
{
string output = "";
for (int i = 0; i < calcMemory.Count(); i++)
{
output += calcMemory.ElementAt(i);
if (i != calcMemory.Count() - 1)
{
output += " | ";
}
}
return output;
}
Funktioniert in C# ein Stack anders, als in Java?