Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Android

ความแตกต่างระหว่างประเภทรายการและอาร์เรย์ใน Kotlin


รายการ และ อาร์เรย์ เป็นคอลเลกชั่นยอดนิยมสองคอลเลกชั่นที่ Kotlin รองรับ ตามคำจำกัดความ คอลเล็กชันทั้งสองนี้จัดสรรตำแหน่งหน่วยความจำตามลำดับ ในบทความนี้ เราจะยกตัวอย่างเพื่อแสดงความแตกต่างระหว่างคอลเล็กชันทั้งสองประเภทนี้

แอตทริบิวต์ อาร์เรย์ รายการ
การนำไปใช้ Array ถูกใช้งานโดยใช้ Array คลาส รายการ หรือ MutableList อินเทอร์เฟซใช้เพื่อติดตั้ง รายการ ใน Kotlin
เปลี่ยนแปลงได้ อาร์เรย์ เปลี่ยนแปลงได้ กล่าวคือ ค่าสามารถเปลี่ยนแปลงได้ รายการ ไม่เปลี่ยนแปลงในธรรมชาติ ในการสร้างรายการที่เปลี่ยนแปลงได้ MutableList จำเป็นต้องใช้อินเทอร์เฟซ
ขนาด อาร์เรย์มีขนาดคงที่ ไม่สามารถเพิ่มและลดขนาดได้ MutableList มี 'เพิ่ม' และ 'ลบ' ฟังก์ชันเพื่อเพิ่มหรือลดขนาดของ MutableList .
ประสิทธิภาพ ใช้เพื่อประสิทธิภาพที่ดีขึ้น เนื่องจากอาร์เรย์ได้รับการปรับให้เหมาะสมสำหรับประเภทข้อมูลพื้นฐานต่างๆ เช่น IntArray[], DoubleArray[] . ใช้เพื่อการเข้าถึงที่ดีขึ้นในโค้ด เนื่องจากขนาดมีลักษณะเป็นไดนามิก จึงทำให้มีการจัดการหน่วยความจำที่ดี

ตัวอย่าง

ในตัวอย่างต่อไปนี้ เราจะมาดูกันว่าเราสามารถประกาศอาร์เรย์และรายการใน Kotlin ได้อย่างไร และเราจะจัดการค่าของค่าเดียวกันได้อย่างไร

fun main(args: Array<String>) {

   val a = arrayOf(1, 2, 3)

   // Printing all the values of array a
   println("The Array contains:")
   a.forEach{
      println(it)
   }


   val names = listOf("stud1", "stud2", "stud3")

   // Printing all the values of list names
   println("\nThe List contains: ")
   names.forEach {
      println(it)
   }


   var days: MutableList<String> = mutableListOf(
      "Monday", "Tuesday", "Wednesday",
      "Thursday", "Friday", "Saturday", "Sunday"
   )

   // Printing all the values of MutableList list
   println("\nGiven Mutable List contains:")
   days.forEach{
      print(it)
   }

   println("\n\nMutable List after modification:")
   days.forEach{
      print(it + ", ")
   }

}

ผลลัพธ์

มันจะสร้างผลลัพธ์ต่อไปนี้ -

The Array contains:
1
2
3

The List contains:
stud1
stud2
stud3

Given Mutable List contains:
MondayTuesdayWednesdayThursdayFridaySaturdaySunday

Mutable List after modification:
Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday,