Computer >> Máy Tính >  >> Lập trình >> Android

Sự khác biệt giữa các loại Danh sách và Mảng trong Kotlin

Danh sách mảng là hai bộ sưu tập phổ biến được hỗ trợ bởi Kotlin. Theo định nghĩa, cả hai bộ sưu tập này đều phân bổ vị trí bộ nhớ tuần tự. Trong bài viết này, chúng tôi sẽ lấy một ví dụ để chứng minh sự khác biệt giữa hai loại tập hợp này.

Thuộc tính Mảng Danh sách
Thực hiện Mảng được triển khai bằng Mảng lớp học Danh sách hoặc Danh sách có thể thay đổi giao diện được sử dụng để triển khai Danh sách trong Kotlin
Có thể thay đổi Mảng là có thể thay đổi, tức là các giá trị có thể được thay đổi. Danh sách là bất biến về bản chất. Để tạo danh sách có thể thay đổi, Danh sách có thể thay đổi giao diện cần được sử dụng.
Kích thước Mảng có kích thước cố định. Nó không thể tăng và giảm kích thước. Danh sách có thể thay đổi 'thêm' 'loại bỏ' để tăng hoặc giảm kích thước của Danh sách có thể thay đổi .
Hiệu suất Sử dụng nó để có hiệu suất tốt hơn vì mảng được tối ưu hóa cho các kiểu dữ liệu nguyên thủy khác nhau như IntArray [], DoubleArray [] . Sử dụng nó để có khả năng tiếp cận tốt hơn trong mã. Vì kích thước có bản chất động, do đó quản lý bộ nhớ tốt.

Ví dụ

Trong ví dụ sau, chúng ta sẽ thấy cách chúng ta có thể khai báo một mảng và một Danh sách trong Kotlin và cách chúng ta có thể thao tác các giá trị giống nhau.

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 + ", ")
   }

}

Đầu ra

Nó sẽ tạo ra kết quả sau -

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,