Kotlin ist eine moderne Programmiersprache, die Java-Bytecode kompiliert. Es ist kostenlos und Open Source und verspricht, die Kodierung für Android noch mehr Spaß zu machen.
In dem vorherigen Artikel dieser Serie haben Sie die Nullfähigkeit, Schleifen und Bedingungen in Kotlin kennen gelernt. In diesem Lernprogramm lernen wir die Sprache weiter, indem wir uns die APIs für Bereiche und Sammlungen in Kotlin ansehen.
Ein Bereich in Kotlin ist ein eindeutiger Typ, der einen Startwert und einen Endwert definiert. Mit anderen Worten, es ist ein Intervall zwischen einem Start- und einem Endwert. Bereiche in Kotlin sind geschlossen, das heißt, der Startwert und der Endwert sind im Bereich enthalten.
Wir werden uns jetzt die verschiedenen Arten ansehen, wie Sie in Kotlin Sortimente erstellen können.
…
Operatorval oneToFive = 1… 5
Im obigen Code haben wir einen geschlossenen Bereich erstellt. Diese Variable oneToFive
enthält die folgenden Werte: 1, 2, 3, 4, 5. Wir können es mit dem Loop durchlaufen zum
Schleifenkonstrukt.
für (n in oneToFive) print (n)
Der obige Code kann abgekürzt werden zu:
für (n in 1… 5) print (n)
Wir können auch eine Reihe von Zeichen erstellen:
val aToZ = "a"… "z"
Die Variable A bis Z
wird alle Buchstaben im englischen Alphabet haben.
rangeTo ()
FunktionDas …
Operator kann durch den ersetzt werden rangeTo ()
Erweiterungsfunktion zum Erstellen eines Bereichs. Zum Beispiel können wir das auch tun 1. BereichTo (5)
und es hätte immer noch die gleichen Ergebnisse wie bei der Verwendung von …
Betreiber wie zuvor erläutert.
val oneToFive: IntRange = 1.rangeTo (5)
bis zu()
FunktionDies ist eine weitere Erweiterungsfunktion, die einen Bereich erstellt, der von einer bestimmten Zahl bis zu einer anderen beginnt.
val fiveToOne = 5.downTo (1)
Wir können den Bereich mit ändern Schritt()
Funktion. Dadurch wird das Delta zwischen jedem Element im Bereich geändert.
val oneToTenStep = 1… 10 Schritt 2 // 1, 3, 5, 7, 9
Der obige Code enthält ungerade Zahlen zwischen 1 und 10.
im
OperatorDas im
Operator wird verwendet, um festzustellen, ob ein Wert in einem bestimmten Bereich vorhanden ist.
if (5 in 1… 10) print ("Ja 5 ist im Bereich") // druckt "Ja 5 ist im Bereich"
Im obigen Code haben wir überprüft, ob 5 im Bereich von 1 bis 10 liegt im
Operator. Wir können auch das Gegenteil tun !n
um zu prüfen, ob 5 nicht im Bereich liegt.
Sammlungen werden verwendet, um Gruppen zusammengehöriger Objekte im Speicher abzulegen. In einer Sammlung können wir die Objekte abrufen, speichern oder organisieren. Kotlin bietet seine Collections-API als Standardbibliothek an, die auf der Java-Collections-API basiert. (In Kotlin werden wir in einem zukünftigen Beitrag Schnittstellen besprechen.)
Sie sollten beachten, dass diese Schnittstellen zur Kompilierzeit mit ihrer Implementierung verknüpft sind. Sie können den Implementierungsquellcode in Kotlin nicht sehen, da die Sammlungen tatsächlich von den Standard-Java-Sammlungen wie z. B. implementiert werden Anordnungsliste
, Karten
, HashMap
, Sets
, HashSet
, Liste
und so weiter. Um die Collections-API in Kotlin wirklich zu verstehen, müssen Sie mit diesen grundlegenden Klassen und Schnittstellen in Java vertraut sein.
In diesem Abschnitt erfahren Sie mehr über die Liste
, einstellen
und Karte
Sammlungen in Kotlin. (Wenn Sie eine Auffrischung der Arrays in Kotlin wünschen, besuchen Sie bitte das erste Tutorial dieser Serie.)
Kotlins Kollektionen geben uns die Möglichkeit, mit wenig Code viel zu erreichen - im Gegensatz zu Java, das scheinbar sehr viel Code braucht, um ein wenig zu erreichen! Kotlin hat zwei Varianten von Sammlungen: veränderlich und unveränderlich. Eine veränderliche Auflistung ermöglicht es uns, eine Auflistung zu ändern, indem ein Element hinzugefügt, entfernt oder ersetzt wird. Unveränderbare Sammlungen können nicht geändert werden und verfügen nicht über diese Hilfsmethoden.
Beachten Sie, dass das Hinzufügen, Entfernen oder Ersetzen eines Elements in einer unveränderlichen Auflistung über Operatorfunktionen möglich ist (wir werden das in Kürze tun), aber diese erstellen am Ende eine neue Auflistung.
Iterable
SchnittstelleDer Kotlin Iterable
Die Benutzeroberfläche befindet sich oben in der Hierarchie der Sammlungen. Diese Schnittstelle ermöglicht die Darstellung von Sammlungen als Folge von Elementen (die natürlich wiederholt werden können)..
öffentliche Schnittstelle Iterablepublic abstract operator fun iterator (): Iterator
Sammlung
SchnittstelleDer Kotlin Sammlung
Schnittstelle erweitert die Iterable
Schnittstelle. Das Sammlung
Schnittstelle ist unveränderlich. Mit anderen Worten, Sie haben Lesezugriff auf Sammlungen. Das einstellen
und Liste
Schnittstellen (mehr dazu in Kürze) in Kotlin erweitern diese Schnittstelle.
Einige der Funktionen und Eigenschaften, die in verfügbar sind Sammlung
Schnittstelle sind:
Größe
: Diese Eigenschaft gibt die Größe der Sammlung zurück.ist leer()
: gibt true zurück, wenn die Sammlung leer ist oder andernfalls false. enthält (Element: E)
: Gibt true zurück, wenn das im Argument angegebene Element in der Auflistung vorhanden ist.enthältAll (Element: Collection)
: Gibt true zurück, wenn das als Argument übergebene Element in der Auflistung in der Auflistung vorhanden ist. öffentliche Schnittstelle Collection: Iterierbar public val size: Int public fun isEmpty (): Der boolesche öffentliche Operator fun enthält (Element: @UnsafeVariance E): Boolean überschreibt den iterator (): Iterator öffentlicher Spaß enthältAll (Elemente: Sammlung<@UnsafeVariance E>): Boolean
MutableIterable
SchnittstelleDiese Schnittstelle in Kotlin gibt uns einen spezialisierten mutierbaren Iterator vom übergeordneten Element Iterable
Schnittstelle.
öffentliche Schnittstelle MutableIterable: Iterierbar iterator überschreiben (): MutableIterator
MutableCollection
SchnittstelleDas MutableCollection
Die Schnittstelle in Kotlin ist eine spezialisierte Schnittstelle, mit der Sammlungen veränderbar werden können. Mit anderen Worten, das Hinzufügen und Entfernen von Operationen kann für eine bestimmte Sammlung ausgeführt werden. Diese Schnittstelle erweitert sowohl die Sammlung
Schnittstelle und die MutableIterable
Schnittstelle bereits oben diskutiert. Das MutableSet
und MutableList
Schnittstellen (wir werden sie in Kürze erhalten) in Kotlin erweitern diese Schnittstelle. Die Funktionen, die in dieser Benutzeroberfläche zur Verfügung stehen, sind:
add (Element: E)
: fügt das als Argument übergebene Element der Auflistung hinzu und gibt true zurück, wenn erfolgreich, oder false, wenn die Auflistung keine Duplikate unterstützt und das Element bereits vorhanden ist.entfernen (Element: E)
: entfernt das als Argument übergebene Element aus der Auflistung. Gibt true zurück, wenn erfolgreich, oder false, wenn es nicht in der Auflistung vorhanden war.addAll (Elemente: Sammlung)
: fügt alle Elemente in der Auflistung der Auflistung als Argumente hinzu. Gibt true zurück, wenn erfolgreich, oder false, wenn nichts hinzugefügt wurde.removeAll (Elemente: Sammlung)
: Entfernt alle Elemente der Sammlung, die als Argumente übergeben werden. Gibt true zurück, wenn erfolgreich, oder false, wenn nichts entfernt wurde.keepAll (Elemente: Sammlung)
: behält nur die Elemente in den Sammlungen bei, die als Argumente übergeben werden. Gibt true zurück, wenn erfolgreich, oder false, wenn nichts beibehalten wurde. klar()
: Entfernt alle Elemente aus dieser Sammlung.öffentliche Schnittstelle MutableCollection: Sammlung , MutableIterable iterator überschreiben (): MutableIterator öffentlicher Spaß add (Element: E): Boolescher öffentlicher Spaß entfernen (Element: E): Boolescher öffentlicher Spaß addAll (Elemente: Collection ): Boolescher öffentlicher Spaß removeAll (Elemente: Collection ): Boolescher öffentlicher SpaßkäfigAll (Elemente: Collection ): Boolescher öffentlicher Spaß clear (): Unit
Jetzt haben Sie die wichtigsten Schnittstellen in der Collection-Klassenhierarchie in Kotlin kennen gelernt. Lassen Sie uns nun untersuchen, wie Kotlin im verbleibenden Teil des Lernprogramms mit Sammlungen wie Listen, Sets und Maps umgeht.
Eine Liste ist eine geordnete Sammlung von Elementen. Dies ist eine beliebte Sammlung, die weit verbreitet ist. Lassen Sie uns verschiedene Möglichkeiten zum Erstellen einer Liste in Kotlin betrachten.
Liste von()
FunktionIn Kotlin können Sie eine unveränderliche (schreibgeschützte) Liste erstellen, indem Sie die Liste von()
Hilfsfunktion aus der Kotlin-Standardbibliothek. Diese Funktion gibt einen Kotlin zurück Liste
Oberflächentyp.
Var-Nummern: Liste= listOf (1, 2, 3, 4, 5) Variablennamen: Liste = listOf ("Chike", "Nnamdi", "Mgbemena") für (Name in Namen) println (Name)
Das Ausführen des obigen Codes wird gedruckt:
Chike Nnamdi Mgbemena
Darüber hinaus können wir Werte verschiedener Typen in die übergeben Liste von()
als Argumente und das Ergebnis wird immer noch funktionieren - es wird eine Liste von gemischten Typen sein.
var listMixedTypes = listOf ("Chike", 1, 2.445, 's') // wird immer noch kompiliert
leere Liste()
FunktionDiese Funktion erstellt nur eine leere unveränderliche Liste und gibt einen Kotlin zurück Liste
Oberflächentyp.
val emptyList: Liste= leereListe ()
listOfNotNull ()
FunktionDiese Funktion erstellt eine neue unveränderliche Liste, die nur Elemente enthält, die nicht null sind. Beachten Sie, dass diese Funktion einen Kotlin zurückgibt Liste
Schnittstellentyp auch.
val nonNullsList: Liste= listOfNotNull (2, 45, 2, null, 5, null)
Das Liste
Schnittstelle aus der Kotlin Standardbibliothek erweitert nur die Sammlung
Schnittstelle. Mit anderen Worten, das einzige übergeordnete Element ist das Sammlung
Schnittstelle. Es überschreibt alle Funktionen in der übergeordneten Schnittstelle, um auf seine speziellen Bedürfnisse einzugehen, und definiert auch seine eigenen Funktionen, z.
get (Index: Int)
: Ein Funktionsoperator, der das Element am angegebenen Index zurückgibt. indexOf (Element: E)
: Gibt den Index des ersten Vorkommens des Elements zurück, das als Argument in der Liste übergeben wird, oder -1, wenn keines gefunden wird.lastIndexOf (Element: E)
: Gibt den Index des letzten Vorkommens des Elements zurück, das als Argument in der Liste übergeben wurde, oder -1, wenn keines gefunden wird. listIterator ()
: gibt einen Listen-Iterator über die Elemente in der Liste zurück.subList (fromIndex: Int, bisIndex: Int)
: gibt eine Liste zurück, die den Teil der Liste zwischen den angegebenen Start- und Endindizes enthält. println (names.size) // 3 println (names.get (0)) // "Chike" println (names.indexOf ("Mgbemena")) // 2 println (names.contains ("Nnamdi")) // 'wahr'
arrayListOf ()
FunktionDadurch wird eine veränderliche Liste erstellt und Java zurückgegeben Anordnungsliste
Art.
val stringList: ArrayList= arrayListOf ("Hallo Du da")
mutableListOf ()
FunktionUm Werte in einer Liste hinzufügen, entfernen oder ersetzen zu können, müssen wir die Liste in einen veränderlichen Wert umwandeln. Wir können eine unveränderliche Liste in eine veränderliche umwandeln, indem Sie die Funktion aufrufen toMutableList ()
auf der Liste. Beachten Sie jedoch, dass diese Methode eine neue Liste erstellt.
var mutableNames1 = names.toMutableList () mutableNames1.add ("Ruth") // jetzt mutierbar und fügte "Ruth" zur Liste hinzu
Um eine veränderliche Liste eines bestimmten Typs von Grund auf zu erstellen, z. String
, wir gebrauchen mutableListOf
, für gemischte Typen können wir einfach die mutableListOf ()
Funktion stattdessen.
// eine veränderliche Liste eines bestimmten Typs, z. String val mutableListNames: MutableList= mutableListOf ("Josh", "Kene", "Sanya") mutableListNames.add ("Mary") mutableListNames.removeAt (1) mutableListNames [0] = "Oluchi" // Ersetzt das Element in Index 0 durch "Oluchi" // a mutierbare Liste gemischter Typen val mutableListMixed = mutableListOf ("BMW", "Toyota", 1, 6.76, 'v')
Jede dieser Funktionen gibt a zurück MutableList
Kotlin-Schnittstellentyp. Diese Schnittstelle erweitert sowohl die MutableCollection
und Liste
Schnittstellen, die zuvor in diesem Abschnitt beschrieben wurden. Das MutableList
Das Interface fügt Methoden zum Abrufen oder Ersetzen eines Elements basierend auf seiner Position hinzu:
set (Index: Int, Element: E)
: Ersetzt ein Element in der Liste durch ein anderes Element. Dies gibt das Element an der angegebenen Position zurück.add (Index: Int, Element: E)
: fügt ein Element am angegebenen Index ein. removeAt (Index: Int)
: Entfernt das Element an einem bestimmten Index. val mutableListFood: MutableList= mutableListOf ("Reis & Eintopf", "Jollof-Reis", "Eba & Egusi", "Gebratener Reis") mutableListFood.remove ("Fried rice") mutableListFood.removeAt (0) mutableListFood.set (0, "Beans") mutableListFood. add (1, "Bread & tea") für (foodName in mutableListFood) println (foodName)
Mit dem obigen Code erzeugen wir folgendes Ergebnis:
Bohnen Brot & Tee Eba & Egusi
Beachten Sie, dass alle diese Funktionen ein Java erstellen Anordnungsliste
hinter den Kulissen.
Ein Set ist eine ungeordnete Sammlung eindeutiger Elemente. Mit anderen Worten, es darf keine Duplikate haben! Sehen wir uns einige Möglichkeiten an, wie Sie in Kotlin ein Set erstellen können. Jede davon erzeugt eine andere Datenstruktur, die jeweils für eine bestimmte Aufgabe optimiert ist.
setOf ()
FunktionUm eine unveränderliche (schreibgeschützte) Menge in Kotlin zu erstellen, können Sie die Funktion verwenden setOf ()
, was einen Kotlin zurückgibt einstellen
Oberflächentyp.
// erstellt einen unveränderlichen Satz gemischter Typen. val mixedTypesSet = setOf (2, 4.454, "how", "far", 'c') // wird var intSet: Set kompilieren= setOf (1, 3, 4) // Nur ganzzahlige Typen zulässig
Beachten Sie, dass der Kotlin einstellen
Schnittstelle erweitert nur den Kotlin Sammlung
Schnittstelle und überschreibt alle Eigenschaften, die in seinem übergeordneten Element verfügbar sind.
hashSetOf ()
Funktion Verwendung der hashSetOf ()
Funktion erstellt ein Java HashSet
Sammlung, die Elemente in einer Hashtabelle speichert. Weil diese Funktion Java zurückgibt HashSet
Wenn Sie den Typ eingeben, können wir Elemente hinzufügen, entfernen oder löschen. Mit anderen Worten, es ist veränderlich.
val intsHashSet: java.util.HashSet= hashSetOf (1, 2, 6, 3) intsHashSet.add (5) intsHashSet.remove (1)
sortiertesSetOf ()
FunktionVerwendung der sortiertesSetOf ()
Funktion erstellt ein Java TreeSet
Sammlung hinter den Kulissen, die Elemente nach ihrer natürlichen Anordnung oder nach einem Vergleicher anordnet. Dieser Satz ist auch veränderbar.
val intsSortedSet: java.util.TreeSet=ortedSetOf (4, 1, 7, 2) intsSortedSet.add (6) intsSortedSet.remove (1) intsSortedSet.clear ()
linkedSetOf ()
FunktionDiese Funktion gibt ein Java zurück LinkedHashSet
Art. Dieses veränderliche Set enthält eine verknüpfte Liste der Einträge des Sets in der Reihenfolge, in der sie eingefügt wurden.
val intsLinkedHashSet: java.util.LinkedHashSet= linkedSetOf (5, 2, 7, 2, 5) // 5, 2, 7 intsLinkedHashSet.add (4) intsLinkedHashSet.remove (2) intsLinkedHashSet.clear ()
mutableSetOf ()
FunktionWir können benutzen mutableSetOf ()
einen veränderbaren Satz erstellen. Diese Funktion gibt einen Kotlin zurück MutableSet
Oberflächentyp. Hinter den Kulissen erstellt diese Funktion lediglich ein Java LinkedHashSet
.
// erstellt eine veränderliche Menge von Int-Typen, die nur inTMMutableSet: MutableSet enthalten sind= mutableSetOf (3, 5, 6, 2, 0) intsMutableSet.add (8) intsMutableSet.remove (3)
Das MutableSet
Schnittstelle erweitert sowohl die MutableCollection
und das einstellen
Schnittstellen.
Zuordnungen von Schlüsseln zu Werten. Die Schlüssel müssen eindeutig sein, die zugehörigen Werte müssen jedoch nicht sein. Auf diese Weise kann jeder Schlüssel verwendet werden, um den zugehörigen Wert eindeutig zu identifizieren, da durch die Zuordnung sichergestellt wird, dass in der Sammlung keine doppelten Schlüssel vorhanden sind. Hinter den Kulissen verwendet Kotlin Java Karte
Sammlung, um den Typ der Kartensammlung zu implementieren.
Karte von()
FunktionSo erstellen Sie eine unveränderliche Datei oder schreibgeschützt Karte
Sammlung in Kotlin verwenden wir die Karte von()
Funktion. Wir erstellen eine Map mit dieser Funktion, indem wir ihr eine Liste von Paaren geben. Der erste Wert ist der Schlüssel und der zweite ist der Wert. Beim Aufruf dieser Funktion wird ein Kotlin zurückgegeben Karte
Oberflächentyp.
val callingCodesMap: Karte= mapOf (234 für "Nigeria", 1 für "USA", 233 für "Ghana") für ((Schlüssel, Wert) in callCodesMap) println ("$ key ist der Aufrufcode für $ value") print (callingCodesMap.) [234]) // Nigeria
Wenn Sie den obigen Code ausführen, erhalten Sie das Ergebnis:
234 ist die Vorwahl von Nigeria 1 ist die Vorwahl von USA 233 ist die Vorwahl von Ghana
Nicht so wie Liste
und einstellen
Schnittstellen in Kotlin, die das erweitern Sammlung
Schnittstelle, die Karte
Schnittstelle erstreckt sich überhaupt nicht. Einige der Eigenschaften und Funktionen dieser Schnittstelle sind:
Größe
: Diese Eigenschaft gibt die Größe der Kartensammlung zurück.ist leer()
: gibt true zurück, wenn die Map leer ist oder andernfalls false.containsKey (Schlüssel: K)
: gibt true zurück, wenn die Karte den Schlüssel im Argument enthält. containsValue (Wert: V)
: gibt true zurück, wenn die Karte einen oder mehrere Schlüssel dem als Argument übergebenen Wert zuordnet.erhalten (Schlüssel: K)
: gibt den Wert zurück, der dem angegebenen Schlüssel entspricht, oder 'null', wenn keiner gefunden wird. Schlüssel
: Diese Eigenschaft gibt eine unveränderliche Datei zurück einstellen
aller Schlüssel in der Karte.Werte
: gibt eine unveränderliche zurück Sammlung
aller Werte in der Karte.mutableMapOf ()
FunktionDas mutableMapOf ()
function erstellt für uns eine veränderliche Map, sodass wir Elemente in der Map hinzufügen und entfernen können. Dies gibt einen Kotlin zurück MutableMap
Oberflächentyp.
val WährungenMutableMap: MutableMap= mutableMapOf ("Naira" bis "Nigeria", "Dollar" bis "USA", "Pfund" bis "UK") println ("Länder sind $ WährungenMutableMap.values") // Länder sind [Nigeria, USA, UK ] println ("Währungen sind $ WährungenMutableMap.keys") // Währungen sind [Naira, Dollar, Pfund] WährungenMutableMap.put ("Cedi", "Ghana") WährungenMutableMap.remove ("Dollar")
Das MutableMap
Schnittstelle erweitert das nicht MutableCollection
Schnittstelle; Es ist nur der Elternteil Karte
Schnittstelle. Es überschreibt die Schlüssel
, Einträge
und Werte
Eigenschaften der übergeordneten Schnittstelle, um sie neu zu definieren. Hier sind einige der zusätzlichen Funktionen, die in verfügbar sind MutableMap
Schnittstelle:
put (Schlüssel: K, Wert: V)
: fügt das Schlüssel / Wert-Paar in die Karte ein. Dies gibt den vorherigen Wert zurück, der mit dem Schlüssel verknüpft ist, oder null, wenn der Schlüssel zuvor nicht verwendet wurde. entfernen (Schlüssel: K)
: Entfernt den Schlüssel und den verknüpften Wert aus der Karte. putAll
(von: Karte)
: aktualisiert die Karte mit allen Daten der angegebenen Karte. Neue Schlüssel werden hinzugefügt und vorhandene Schlüssel werden mit neuen Werten aktualisiert. klar()
: Entfernt alle Elemente von der Karte. Wir können den Wert für einen Schlüssel mit der erhalten()
Funktion. Wir können auch die eckige Klammernotation als Abkürzung für verwenden erhalten()
.
print (WährungenMutableMap.get ("Nigeria")) // druckt Naira Druck (WährungenMutableMap ["Nigeria"]) // druckt Naira
hashMapOf ()
FunktionBei Verwendung dieser Funktion wird Java zurückgegeben HashMap
Typ, der veränderbar ist. Das HashMap
Klasse verwendet eine Hashtabelle, um Java zu implementieren Karte
Schnittstelle.
val personsHashMap: java.util.HashMap= hashMapOf (1 zu "Chike", 2 zu "John", 3 zu "Emeka") PersonsHashMap.put (4, "Chuka") PersonsHashMap.remove (2) print (PersonsHashMap [1]) // wird Chike drucken
linkedHashMap ()
FunktionDiese Funktion gibt ein Java zurück LinkedHashMap
Typ, der veränderbar ist. Das LinkedHashMap
Klasse erweitert Java HashMap
und führt eine verknüpfte Liste der Einträge in der Karte in der Reihenfolge, in der sie eingefügt wurden.
val postalCodesHashMap: java.util.LinkedHashMap= linkedMapOf ("NG" nach "Nigeria", "AU" nach "Australien", "CA" nach "Kanada") postCodesHashMap.put ("NA", "Namibia") postalCodesHashMap.remove ("AU") postalCodesHashMap.get ("CA") // Kanada
sortierteMapOf ()
FunktionDiese Funktion gibt ein Java zurück SortedMap
Typ, der veränderbar ist. Das Java SortedMap
Klasse sieht, dass die Einträge in der Karte in aufsteigender Reihenfolge der Schlüssel verwaltet werden.
val personsSortedMap: java.util.SortedMap= sortiertMapOf (2 zu "Chike", 1 zu "John", 3 zu "Emeka") PersonenSortedMap.put (7, "Adam") PersonenSortedMap.remove (3)
Denken Sie daran, dass die Implementierung dieser Erfassungsschnittstellen in Kotlin zur Kompilierzeit erfolgt.
Kotlin bietet uns viele nützliche Operatorfunktionen, sogenannte Erweiterungsfunktionen, die in Sammlungen aufgerufen werden können. Werfen wir einen Blick auf einige der nützlichsten.
zuletzt()
FunktionDiese Operatorfunktion gibt das letzte Element in einer Auflistung zurück, z. B. eine Liste oder einen Satz. Wir können auch ein Prädikat für die Suche innerhalb einer Teilmenge von Elementen angeben.
val stringList: Liste= listOf ("in", "the", "club") print (stringList.last ()) // druckt "club" // mit einem Prädikat print (stringList.last it.length == 3) / / druckt "the" val intSet: Set = setOf (3, 5, 6, 6, 6, 3) print (intSet.last ()) // druckt 6
zuerst()
FunktionDiese Operatorfunktion gibt das erste Element zurück, wenn sie in einer Auflistung wie einer Liste oder einem Satz aufgerufen wird. Wenn ein Prädikat angegeben ist, wird die Operation mit dem Prädikat auf eine Teilmenge von Elementen beschränkt.
print (stringList.first ()) // druckt "in" print (intSet.first ()) // druckt 3
max ()
FunktionBeim Aufrufen dieser Operatorfunktion für eine Auflistung, z. B. eine Liste oder ein Set, wird das größte Element zurückgegeben, oder null, wenn kein größtes Element gefunden wird.
val intList: Liste= listOf (1, 3, 4) print (intList.max ()) // druckt 4 print (intSet.max ()) // druckt 6
fallen()
FunktionBeim Aufruf dieser Operatorfunktion wird eine neue Liste oder Gruppe zurückgegeben, die alle Elemente außer den ersten n Elementen enthält.
print (stringList.drop (2)) // druckt "club"
Plus()
FunktionDiese Operatorfunktion gibt eine Auflistung zurück, die alle Elemente des Originals und dann das angegebene Element enthält, sofern es nicht bereits in der Auflistung enthalten ist. Am Ende wird eine neue Liste erstellt, anstatt die Liste zu ändern.
print (intList.plus (6)) // druckt [1, 3, 4, 6]
Minus()
FunktionDas Gegenteil von dem Plus()
Funktion ist die Minus()
Funktion. Sie gibt eine Auflistung zurück, die alle Elemente des ursprünglichen Satzes außer dem angegebenen Element enthält. Dadurch wird auch eine neue Liste erstellt, anstatt die Liste zu ändern.
print (intList.minus (3)) // druckt [1, 4]
durchschnittlich()
FunktionBeim Aufruf dieser Operatorfunktion wird eine durchschnittliche Anzahl von Elementen in der Auflistung zurückgegeben.
print (intList.average ()) // druckt 2.6666666666666665
Die meisten dieser Erweiterungsfunktionen sind in der Standardbibliothek der Kotlin-Sammlungen verfügbar. Es wird empfohlen, die Dokumentation durchzulesen, um mehr über die anderen zu erfahren.
In diesem Lernprogramm haben Sie die Produktpalette und Sammlungen von API in der Programmiersprache Kotlin kennen gelernt. Im nächsten Tutorial der Kotlin From Scratch-Serie werden Sie mit Funktionen in Kotlin vertraut gemacht. Bis bald!
Um mehr über die Kotlin-Sprache zu lernen, empfehle ich die Kotlin-Dokumentation. Auf Envato Tuts finden Sie auch einige unserer anderen Android-Apps zur Entwicklung von Apps!