Sie sehen das weil der Index ist eine Zeichenfolge; das 15. Element, das Sie hinzufügen, hat den Index '15', nicht die Nummer 15; und beim Stringvergleich ist '9' größer als '15'. Also, last
zeigt die höchste Zeichenfolge Wert, der immer noch '9' ist. Wie @Koen sagt, ist dies das dokumentierte Verhalten
:
wobei „höchste“ und „niedrigste“ auf String-Vergleich .
Das hat nichts damit zu tun, wie viele Elemente gibt es (was eindeutig 15 ist); es wird nur das Verhalten des Indexwerts beeinflusst.
Wenn Sie mehr Elemente haben, sehen Sie das last
Wertänderung, wenn Sie 89 passieren, da '90' ein höherer Wert als '9' ist und '91' höher als '90' ist; aber wenn Sie 99 überschreiten, bleibt es dort, bis Sie 900 erreichen. Und so weiter.