In C / Objective-C ist es möglich, den Minimal- und Maximalwert zwischen zwei Zahlen mithilfe von MIN- und MAX-Makros zu ermitteln. Swift unterstützt keine Makros und es scheint, dass die Sprach- / Basisbibliothek keine Entsprechungen enthält. Sollte man mit einer kundenspezifischen Lösung, vielleicht basierend auf Generika wie diese ein ?
97
let a : Int = 5
und Befehlstaste + Klicken aufInt
, sehen Sie coole Sachen!a.
die Xcode-Vervollständigungsmöglichkeiten eingegeben und durchgeblättert ... aber 'Befehl + Klicken' ist das Ticket!Wie bereits erwähnt, bietet Swift Funktionen
max
undmin
Funktionen.Ein Beispiel (aktualisiert für Swift 2.x).
quelle
Mit Swift 5
max(_:_:)
undmin(_:_:)
sind Teil der Global Numeric Functions .max(_:_:)
hat die folgende Erklärung:Sie können es so verwenden mit
Int
s:Beachten Sie auch , dass es noch andere Funktionen aufgerufen
max(_:_:_:_:)
undmin(_:_:_:_:)
das ermöglicht es Ihnen , noch mehr Parameter zu vergleichen.max(_:_:_:_:)
hat die folgende Erklärung:Sie können es so verwenden mit
Float
s:Mit Swift sind Sie jedoch nicht auf die Verwendung
max(_:_:)
und deren Geschwister mit Zahlen beschränkt. In der Tat sind diese Funktionen generisch und können jeden Parametertyp akzeptieren , dass KonformComparable
Protokoll, kann es seinString
,Character
oder eine der benutzerdefiniertenclass
oderstruct
.Dabei funktioniert der folgende Playground-Beispielcode einwandfrei:
Wenn Sie das min / max-Element von Elementen abrufen möchten, die sich in einer
Array
, aSet
, aDictionary
oder einer anderen Folge vonComparable
Elementen befinden, können Sie außerdem die Methoden max () oder min () verwenden ( weitere Informationen finden Sie in dieser Antwort zum Stapelüberlauf Einzelheiten).quelle
SWIFT 4 Syntax etwas geändert:
und
Wenn Sie es verwenden, sollten Sie wie in diesem Beispiel schreiben:
Sie erhalten also den Wert von 0 bis 100, egal ob er unter 0 oder höher 100 liegt.
quelle
Int
Sekunden übergeben, ändern Sie es in Swift.max und plötzlich sind die Dinge besser. Danke wm.p1us!Versuche dies.
quelle