2017-03-03 4 views
4

Ich fand diese Antwort:Swift 3 Sortierung ein Array von Tupeln

Sort an array of tuples in swift 3 How to sort an Array of Tuples?

Aber ich habe immer noch Probleme. Hier ist mein Code:

var countsForLetter:[(count:Int, letter:Character)] = [] 
... 
countsForLetter.sorted(by: {$0.count < $1.count}) 

Swift 3 wollte, dass ich die von hinzufügen: und jetzt heißt es, dass das Ergebnis des Anrufs sortiert: von nicht benutzt wird.

Ich bin neu zu swift 3. Tut mir leid, wenn dies eine grundlegende Frage ist.

Antwort

7

Sie erhalten diese Warnung, weil sorted(by... eine neue, sortierte Version des Arrays zurückgibt, von dem Sie sie aufrufen. Die Warnung weist also darauf hin, dass Sie sie keiner Variablen zuweisen. Man könnte sagen:

countsForLetter = countsForLetter.sorted(by: {$0.count < $1.count}) 

Ich vermute, dass Sie auf „Art in place“ sind versucht, so dass in diesem Fall, dass Sie sorted(by-sort(by ändern könnten und es wäre einfach irgendwie countsForLetter und es auf die gleiche Variable zugeordnet verlassen.

2

Sorted() gibt ein neues Array zurück, es wird nicht sortiert.

können Sie:

countsForLetter = countsForLetter.sorted(by: {$0.count < $1.count}) 

oder

countsForLetter.sort(by: {$0.count < $1.count}) 
Verwandte Themen