In Java wird das Paket java.lang
standardmäßig importiert.
In Kotlin sind eine Reihe von Funktionen und Klassen verfügbar, ohne importiert zu werden, wie println
und Kotlins Array
, Int
usw. Typen.
Was wird standardmäßig importiert und wo ist es definiert?Welche Pakete/Funktionen werden standardmäßig in Kotlin importiert?
Antwort
Kotlin stdlib hat root-Paket und seine Unterpakete (see the full list with the content).
Es scheint nicht überall dokumentiert werden, wer von ihnen sind standardmäßig importiert, aber ein peek into Kotlin Github sources schlägt vor, dass diese Pakete für JVM Zielplattform importiert werden:
java.lang.*
kotlin.*
kotlin.annotation.*
kotlin.jvm.*
kotlin.collections.*
kotlin.ranges.*
kotlin.sequences.*
kotlin.text.*
kotlin.io.*
kotlin.coroutines.*
(in Kotlin 1.1, nicht in 1.0.4 hinzugefügt werden)
ich sie manuell getestet haben, und Die obige Liste gilt für Kotlin 1.0.4. Und diese stdlib Pakete sind nicht standardmäßig importiert:
kotlin.comparisons.*
kotlin.concurrent.*
kotlin.properties.*
kotlin.reflect.*
kotlin.reflect.jvm.*
kotlin.system.*
Wie @Magnus festgestellt, die Standardimporte für JS-Plattform are different.
Die offizielle Dokumentation für die Liste der Standard-Importe Kotlin (die Änderung sein, mit neuen Versionen der Sprache wahrscheinlich ist), ist hier: https://kotlinlang.org/docs/reference/packages.html#default-imports
Ab 2018.02.11 es folgendes umfasst:
- Kotlin. *
- kotlin.annotation. *
- kotlin.collections. *
- kotlin.comparisons. * (Seit 1..... 1)
- kotlin.io *
- kotlin.ranges *
- kotlin.sequences *
- kotlin.text *
Zusätzliche Pakete sind abhängig von der Zielplattform eingeführt:
JVM.
- java.lang *
..- kotlin.jvm *
JS:
- kotlin.js *
Während dieser Link die Frage beantworten kann, ist es besser, hier die wesentlichen Teile der Antwort einzubeziehen und den Link als Referenz bereitzustellen. Nur-Link-Antworten können ungültig werden, wenn sich die verknüpfte Seite ändert. - [Aus Bewertung] (/ review/low-quality-posts/18785659) –
Die Antwort wurde so geändert, dass sie beide enthält. –
- 1. Finden Sie welche Python-Module importiert werden
- 2. Kotlin - Wie man Knotenpakete importiert?
- 3. Welche möglichen Werte können in Kotlin an '@ Suppress' vergeben werden?
- 4. Welche Protokollbereiche sind standardmäßig verfügbar?
- 5. Welche Pakete können auf dem Go-Spielplatz importiert werden?
- 6. Kotlin: Welche Funktionen von Java 8 werden noch nicht unterstützt?
- 7. Welche Schnittstellen implementieren C# enums standardmäßig?
- 8. Ndb kann nicht importiert werden
- 9. Welche Schriftarten sind standardmäßig auf Android installiert?
- 10. Kann pylab nicht importiert werden?
- 11. Pyperclip kann nicht importiert werden
- 12. Kann nicht importiert werden android.support.design.widget.NavigationView
- 13. Kann nicht importiert werden org.apache.spark.sql.cassandra.CassandraSQLContext
- 14. numpy.core.multiarray konnten nicht importiert werden
- 15. ImportError: Name 'Element' kann nicht importiert werden
- 16. Wie kann Pickadate importiert werden?
- 17. WSO2ISschema kann nicht in Openldap importiert werden
- 18. Wie sollte QuartzCore.framework in Swift importiert werden?
- 19. DynamoDB kann nicht in Android importiert werden?
- 20. Sollen Plisten in CoreData importiert werden?
- 21. Unterprozessmodul kann nicht in python3 importiert werden
- 22. UIKit kann nicht importiert werden
- 23. SpringApplicationContextLoader kann nicht importiert werden
- 24. Woher soll ReactDOM importiert werden?
- 25. in Rails wie kann ich ändern, welche Arten importiert werden basierend auf der URL
- 26. Wie werden Zeilennummern standardmäßig in SciTE angezeigt?
- 27. Wie wähle ich aus, welche Java-Überladung in einer von Kotlin abgeleiteten Klasse überschrieben werden soll?
- 28. Welche Abfrage führt die Suche api standardmäßig in elasticsearch aus?
- 29. Statische Methode Importe in Kotlin
- 30. Welche Deklaration bewirkt, dass eine Unit implizit importiert wird?
eine relevante Kotlin Quelle gefunden - die Antwort aktualisiert. – hotkey
erwähnenswert, dass die JS-Plattform auch etwas andere Importe https://github.com/JetBrains/kotlin/blob/383b7f89a6101fd9b2db417f52e3df27781718c5/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/JsPlatform.kt hat – Magnus