Warum setzt Perls "Sortieren" diese Hash-Schlüssel nicht in numerischer Reihenfolge?

8
%Vor%

Wenn ich den obigen Code ausführe, ist das Ergebnis wie folgt:

%Vor%

Ich erwarte, dass "10: 10" das letzte ist, das gedruckt wird. Ich brauche nur jemanden zu erklären, warum Perl mich in diesem Fall überrascht.

    
Haiyuan Zhang 09.03.2010, 09:59
quelle

2 Antworten

36

sort always verwendet standardmäßig den Zeichenfolgenvergleich .

Wenn Sie eine numerische Sortierung wünschen, müssen Sie explizit sein.

%Vor%     
Quentin 09.03.2010, 10:01
quelle
-3

Vergessen Sie nicht, dass die Schlüssel in einem Perl-Hash immer als Strings gespeichert werden, damit die Ausgabe Sinn macht .

    
andeyatz 09.03.2010 10:54
quelle

Tags und Links