Kotlin中的数组

数组是一种常见的数据结构,用于存储相同类型的多个元素。在 Kotlin 中,我们可以使用不同的方式声明、初始化和操作数组。

在 Kotlin 中,有多种方式可以定义和操作数组。我们将通过以下示例代码来展示不同的数组操作:

kotlin 复制代码
fun main() {
    // 声明和初始化数组
    var intArray: IntArray = intArrayOf(1, 2, 3)
    var stringArray: Array<String> = arrayOf("a", "BC")
    var intArray2: Array<Int> = arrayOf(1, 2, 3)

    // 先声明后赋值
    var intArray1: IntArray

    // 初始化数组
    intArray1 = intArrayOf(1, 2, 3)

    // 访问数组元素
    println("intArray1[0]=${intArray1[0]}") // intArray1[0]=1
    println("intArray1[1]=${intArray1[1]}") // intArray1[1]=2
    println("intArray1[2]=${intArray1[2]}") // intArray1[2]=3

    // 获取数组长度
    println("数组的长度:${intArray1.size}") // 数组的长度:3

    // 遍历数组的元素
    for (i in intArray1) {
        print("i=$i \t") // i=1 i=2 i=3
    }
    println()

    // 遍历数组的下标和元素
    for ((index, i) in intArray1.withIndex()) {
        print("index=$index i=$i \t") // index=0 i=1 index=1 i=2 index=2 i=3
    }
    println()

    // 获取数组的最大值
    var intArray3: IntArray = intArrayOf(1, 2, 3, 4)
    var max: Int = 0
    max = intArray3[0]
    for (i in intArray3) {
        if (i > max) {
            max = i
        }
    }
    println("max=$max") // max=4

    // 修改数组
    var intArray4: IntArray = intArrayOf(1, 2, 3, 4)
    intArray4[0] = 10
    intArray4.set(1, 20)
    intArray4.forEachIndexed { index, e ->
        print("index=$index e=$e\t") // index=0 e=10 index=1 e=20 index=2 e=3 index=3 e=4
    }
    println()

    // 查找
    var intArray5: IntArray = intArrayOf(6, 4, 3, 4, 9)
    println("第一个元素为4的索引为" + intArray5.indexOf(4)) // 第一个元素为4的索引为1
    var firstIndex = intArray5.indexOfFirst { it == 4 }
    println("第一个元素为4的索引为" + firstIndex) // 第一个元素为4的索引为1
    println("最后一个元素为4的索引为" + intArray5.lastIndexOf(4)) // 最后一个元素为4的索引为3
    var lastIndex = intArray5.indexOfLast { it == 4 }
    println("最后一个元素为4的索引为" + lastIndex) // 最后一个元素为4的索引为3
}

在上述示例中,我们演示了 Kotlin 中数组的声明、访问、遍历和修改等操作。具体而言:

  • 我们使用 intArrayOf 和 arrayOf 分别声明了 IntArray 和 Array 类型的数组,并进行了初始化。

  • 通过索引访问和修改数组元素,使用方括号 [] 运算符进行访问,或使用 set 方法进行修改。

  • 使用 size 属性获取数组的长度。

  • 使用 for 循环遍历数组的元素,或使用 withIndex 方法遍历数组的下标和元素。

  • 使用循环和条件判断来查找数组中的最大值。

  • 使用 indexOf、`在上述示例中,我们演示了 Kotlin 中数组的声明、访问、遍历和修改等操作。具体而言:

  • 我们使用 intArrayOf 和 arrayOf 分别声明了 IntArray 和 Array 类型的数组,并进行了初始化。

  • 通过索引访问和修改数组元素,使用方括号 [] 运算符进行访问,或使用 set 方法进行修改。

  • 使用 size 属性获取数组的长度。

  • 使用 for 循环遍历数组的元素,或使用 withIndex 方法遍历数组的下标和元素。

  • 使用循环和条件判断来查找数组中的最大值。

  • 使用 indexOf、indexOfFirst 和 lastIndexOf 方法查找数组中指定元素的索引。

以上就是使用 Kotlin 编写数组操作的示例代码。

相关推荐
alexhilton4 小时前
提升 Android Compose 页面的流畅度
android·kotlin·android jetpack
灿飞9 小时前
Kotlin与Java虚拟机四:一段代码的完整旅程
kotlin
Kapaseker16 小时前
Kotlin 2.5 Value Class 终于能放多个属性了
android·kotlin
传奇开心果编程1 天前
【Jetpack Compose娓娓道来】第29课:状态容器与UI事件建模——把“散装状态”变成“可穷举的契约”
android·kotlin·移动开发·android jetpack·ui框架·开发范式·声明式ui
我是唐青枫3 天前
Kotlin Inheritance(继承)详解:语法、原理、实战 Demo
开发语言·kotlin
Goway_Hui3 天前
【KMP for OpenHarmony】-- 在鸿蒙工程中使用 Apollo-Kotlin
华为·kotlin·harmonyos
释厄6234 天前
AI 军备竞赛悖论——为 AI 卖游戏但 AI 需要游戏母场景
人工智能·游戏·kotlin
D e re k ZH4 天前
保序回归:从 PAVA 到可并堆的单调约束优化
c++·算法·数据挖掘·回归·kotlin
Goway_Hui4 天前
【KMP for OpenHarmony】Cache4k 0.14.0 鸿蒙适配
华为·kotlin·harmonyos
YB13754 天前
kotlin与函数式编程
kotlin