4
votes

ArrayList <String> () vs arrayListOf <String> ()

Je passais par quelques bases de Kotlin et ai trouvé deux syntaxes.

arrayListOf<String>()

Et

ArrayList<String>()

Quelle est la différence entre ces deux éléments étant donné que les deux font partie de Kotlin.Collections ?


0 commentaires

5 Réponses :


2
votes

arrayListOf est une fonction, qui a des arguments de longueur variable facultatifs

En cas d'utilisation sans arguments, il n'y a pas de différence


0 commentaires

1
votes
public inline fun <T> arrayListOf(): ArrayList<T> = ArrayList()

0 commentaires

0
votes

c'est une fonction est juste mais est utilisée comme ça

ici dans la fonction utilisée set () la fonction de arrayListOf () est utilisée pour définir l'élément donné à l'index spécifié et remplacer si un élément déjà présent à cet index

.......print list.......
Ajay
Vijay
Prakash
.......list.set(2,"Rohan").......
.......print list.......
Ajay
Vijay
Rohan

Production

fun main(args: Array<String>){

   val list: ArrayList<String> = arrayListOf<String>()

   list.add("Ajay")
   list.add("Vijay")
   list.add("Prakash")

  println(".......print list.......")
  for (i in list) {
      println(i)
  }
  println(".......arrayList.set(2,\"Rohan\").......")
  list.set(2,"Rohan")
  println(".......print ArrayList.......")
  for (i in list) {
      println(i)
  }
}


0 commentaires

4
votes

arrayListOf<T>() est principalement là pour votre commodité. vararg vararg ont généralement un impact (parfois négligeable) sur les performances et basculer entre arrayListOf(someElements...) et arrayListOf() sans cette méthode pratique vous déléguerait fondamentalement ce problème en tant que programmeur. Vous devez le savoir et vous devrez changer ce code en ArrayList() , si un tel impact vous affecte et si cette fonction pratique n'existerait pas.

arrayListOf() est fondamentalement juste cela. Il renvoie ArrayList() et il est inséré. C'est juste pratique, pour que vous n'ayez pas vraiment à y penser, lorsque vous basculez entre arrayListOf(someElements) et arrayListOf() .

Cela dit: il n'y a pas de différence entre arrayListOf() et ArrayList() comme d'autres l'ont déjà mentionné et arrayListOf(elements) est la variante pratique pour construire un ArrayList avec les éléments donnés.


0 commentaires

0
votes

Lors de la création d'un tableau vide, vous pouvez utiliser soit:

val arrayFromCollectionVerbose = arrayListOf(*hashMap.keys.toTypedArray())

Mais lors de la création d'un tableau à partir d'éléments existants, vous devez utiliser l'un ou l'autre selon que les éléments existants sont déjà dans une collection ou que vous souhaitez les spécifier individuellement:

val arrayFromCollection = ArrayListOf(hashMap.keys)
val arrayFromElements = arrayListOf("1", "2", "3")

Notez que vous pouvez utiliser l'opérateur spread pour passer une collection existante dans arrayListOf en tant qu'éléments individuels, mais si la collection est autre chose qu'un autre tableau, vous devez également la convertir en tableau. Cela ne vaut probablement pas la verbosité supplémentaire:

val emptyArray1 = ArrayList()
val emptyArray2 = arrayListOf()


0 commentaires