2017-06-18 2 views
0

Ich habe diese spezielle Anordnung var myArray : [Array<String>] = [["a"],["b"],["c"]] ich, wenn "a" erkennen wollen, ist bereits in myArraySwift 3 - Überprüfen Sie, ob ein String in einem Array existiert und sortieren es

und nachdem ich alphabetisch meine Array sortieren möchte, aber ich Thema keine Funktion gefunden, all diese Dinge für meine Array

+0

Sie Ihre innere Arrays enthalten immer 1 String oder könnte es mehrere sein? – vacawama

+0

@vacawama myArray enthält mehrere Zeichenfolgen, aber ich möchte nur eine Zeichenfolge erkennen – Rombond

+0

Wenn Sie alphabetisch sortieren, was wäre das erwartete Ergebnis für dieses Array '[[" c "," a "], [" e "," b "], [" d "]]"? – vacawama

Antwort

4

um zu tun, wenn Ihr [[String]]"a" enthält, können Sie contains zweimal verwenden:

var myArray : [Array<String>] = [["a"],["b"],["c"]] 

if myArray.contains(where: { $0.contains("a") }) { 
    print("a found") 
} 

Um die inneren Arrays zu sortieren, gelten map auf der äußeren Anordnung und sortieren jedes Element:

var myArray : [Array<String>] = [["c", "a"], ["e", "b"], ["d"]] 

let sorted = myArray.map { $0.sorted() } 

print(sorted) 
[["a", "c"], ["b", "e"], ["d"]] 
Verwandte Themen