¿Cuál es el equivalente de Kotlin de String de Java?

Veo que Kotlin tiene ByteArray, ShortArray, IntArray, CharArray, DoubleArray, FloatArray , que son equivalentes a byte[], short[], int[],char[], double[], float[] en Java en consecuencia.

Ahora me pregunto, ¿hay algún StringArray equivalente a String[] Java?

No hay ningún caso especial para String , porque String es un tipo referencel ordinario en JVM, en contraste con las primitivas Java ( int , double , …) : almacenarlas en una Array<T> reference requiere que las agrupe en objects como Integer y Double . El objective de las matrices especializadas como IntArray en Kotlin es almacenar primitivas no IntArray , deshaciéndose de los gastos generales de boxeo y desembalaje (lo mismo que Java int[] lugar de Integer[] ).

Puede usar Array<String> (y Array<String?> Para nullables), que es equivalente a String[] en Java:

 val stringsOrNulls = arrayOfNulls<String>(10) // returns Array<String?> val someStrings = Array<String>(5) { "it = $it" } val otherStrings = arrayOf("a", "b", "c") 

Consulte también: Matrices en la reference de idioma

Esos types están ahí para que pueda crear matrices de las primitivas, y no de los types enmarcados. Dado que String no es una primitiva en Java, puede usar Array<String> en Kotlin como el equivalente de Java String[] .

Para Strings y otros types, solo usa Array<*> . La razón por la que IntArray y otros existen es para evitar el autoboxing.

Entonces int[] relaciona con IntArray donde Integer[] relaciona con Array<Int> .

Puede usar la function arrayOf() :

 val literals = arrayOf("str1", "str2", "str3") 
  • Android ViewPager: cómo forzar la eliminación de todos los elementos?
  • Android muestra una advertencia aparentemente inofensiva cuando se reproduce audio?
  • Las @annotations de Kotlin repetibles no funcionan en jdk-8
  • ¿Cómo inyectar con IoC en las funciones de nivel superior de Kotlin? ¿Incluso uso contenedores de IoC?
  • ¿Cómo declarar una class que contiene un campo de tipo genérico en Kotlin?
  • kodein: el valor de los datos inyectados no es el valor recuperado de los datos
  • Referencia no resuelta: kotlinx
  • Seguimiento de gestos desde el service de Android
  • Cómo upload files a S3 Amazon por Okhttp3 y Android
  • Kotlin class anónima esto
  • NoClassDefFoundError en la class Kotlin en la testing JUnit en time de ejecución