• Kotlin 不可变数组和可变数组


    Kotlin 中,可以使用数组来存储一组相同类型的元素。Kotlin 提供了两种类型的数组:不可变数组和可变数组。

    不可变数组(Immutable Arrays)

    • 不可变数组的大小(元素数量)在创建后就确定,并且不能更改。

    • 使用 arrayOf() 函数或者 arrayOfNulls() 函数创建不可变数组。

    • 不可变数组中的元素值是固定的,不可更改。
      下面是创建和使用不可变数组的示例:

       fun main() {
           // 创建一个不可变的数组,元素类型为 Int
           val numbers = arrayOf(1, 2, 3, 4, 5)
           
           // 创建一个不可变的数组,元素类型为 String
           val fruits = arrayOf("Apple", "Banana", "Orange")
       
           // 访问数组元素
           val number = numbers[2]
           println(number) // 输出: 3
       
           // 迭代数组
           for (fruit in fruits) {
               println(fruit)
           }
       
           // 获取数组长度
           val length = numbers.size
           println(length) // 输出: 5
       }
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20

    在上述示例中,我们首先使用 arrayOf() 函数创建了一个包含整数的不可变数组 numbers,以及一个包含字符串的不可变数组 fruits。
    我们可以使用索引运算符 [] 来访问数组中的元素。例如,numbers[2] 表示访问 numbers 数组中索引为 2 的元素,即 3。
    使用 for 循环可以迭代访问数组中的元素,并打印出来。
    通过 size 属性可以获取数组的长度。

    可变数组(Mutable Arrays)

    • 可变数组的大小是可变的,可以根据需要进行动态调整。

    • 使用 mutableListOf() 函数或者 ArrayList 类创建可变数组。

    • 可以通过添加、删除和更新元素来修改可变数组。
      下面是创建和使用可变数组的示例:

       fun main() {
           // 创建一个空的可变数组,元素类型为 Int
           val numbers = mutableListOf()
           
           // 创建一个包含元素的可变数组,元素类型为 String
           val fruits = mutableListOf("Apple", "Banana", "Orange")
       
           // 添加元素
           numbers.add(1)
           numbers.add(2)
           numbers.add(3)
       
           // 删除元素
           fruits.remove("Banana")
       
           // 更新元素
           fruits[0] = "Grape"
       
           // 访问数组元素
           val fruit = fruits[1]
           println(fruit) // 输出: Banana
           
           // 迭代数组
           for (number in numbers) {
               println(number)
           }
       
           // 获取数组长度
           val length = fruits.size
           println(length) // 输出: 2
       }
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
      • 21
      • 22
      • 23
      • 24
      • 25
      • 26
      • 27
      • 28
      • 29
      • 30
      • 31

    在上述示例中,我们首先使用 mutableListOf() 函数创建了一个空的可变数组 numbers,以及一个包含字符串的可变数组 fruits。

    我们可以使用 add() 方法向可变数组中添加元素,使用 remove() 方法删除元素。numbers.add(1) 表示将元素 1 添加到 numbers 数组中。

    通过索引运算符 [] 可以访问和更新数组中的元素。例如,fruits[1] 表示访问 fruits 数组中索引为 1 的元素(原始值为 “Banana”)。

    最后,我们使用 size 属性获取数组的长度。

    需要注意的是:

    • 不可变数组和可变数组之间在操作上有一些差异,可变数组提供了更多的修改操作方法。
    • 当需要频繁地修改集合的大小时,可变数组更加灵活和高效。但是如果集合的大小是固定不变的,则可以选择不可变数组来提高性能和安全性。
  • 相关阅读:
    java版Spring Cloud+Mybatis+Oauth2+分布式+微服务+实现工程管理系统
    golang中的锁竞争问题
    解决 kubernetes(k8s)创建Dashboard失败,Dashboard的pod状态为CrashLoopBackOff
    WebGPU缓冲区更新最佳实践
    粒径测量中的D10 D50 D90的含义
    计算机毕业设计Java教学互动跟踪系统(源码+系统+mysql数据库+lw文档)
    浅谈JS中null的江湖地位
    不想自己开车,Python帮你搞定自动驾驶
    香橙派 C# IOT .net 引用官方WiringOP库实现控制操作引脚高低电平 代码实例
    # 从浅入深 学习 SpringCloud 微服务架构(三)注册中心 Eureka(1)
  • 原文地址:https://blog.csdn.net/wolf0706/article/details/132985372