Bezeichnung
Sort -- sortiert ein Feld
Übersicht
Sort(array[, sortfunc])
Beschreibung
Dieser Befehl sortiert das Feld (Array), das durch die variable array angegeben wird. Es unterstützt Felder vom Typ Zahlen, Typ Zeichenkette oder einen beliebigen Datentyp über eine benutzerdefinierte Callback-Funktion (siehe nächsten Absatz). Dieser Befehl stoppt die Sortierung, wenn er ein Nil-Element oder eine leere Zeichenfolge ("") in Zeichenkettenfelder findet. Zeichenkettenfelder werden alphabetisch und Zahlenfelder in aufsteigender Reihenfolge sortiert.

Ab Hollywood 4.5 können Sie den Sortiervorgang Mithilfe einer benutzerdefinierten Callback-Funktion anpassen. Diese Funktion muss zwei Parameter akzeptieren und gibt sie zurück, wenn der erste Parameter vor dem zweiten eingefügt werden soll oder nicht. Dies bietet Ihnen eine große Flexibilität beim Einrichten von benutzerdefinierten Sortiervorgängen, da Sie beliebige Werte vergleichen und Sie auch die Sortierreihenfolge anpassen können.

Eingaben
array
Feld, welches sortiert werde soll
sortfunc
optional: benutzerdefinierte Funktion, welche Hollywood mitteilt, wie es sortieren soll (V4.5)
Beispiel
names = {"Joey", "Dave", "Mark", "Stephen", "Al", "Jefferson"}
Sort(names)
For k = 0 To 5
   NPrint(names[k])
Next
Der obige Code definiert ein Feld, fügt einige Namen hinzu und sortiert sie dann. Die Ausgabe ist "Al, Dave, Jefferson, Joey, Mark, Stephen".


nums = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
Sort(nums, Function(a, b) Return(a > b) EndFunction)
For k = 0 To 9
   NPrint(nums[k])
Next
Der obige Code verwendet eine benutzerdefinierte Sortierfunktion und sortiert die Tabelle "nums" in absteigender Reihenfolge. Das Ergebnis wird sein: 10, 9, 8, 7, 6, 5, 4, 3, 2, 1.

Navigation zeigen