本文共 2221 字,大约阅读时间需要 7 分钟。
Kotlin中的List与Java的列表有何不同?
Kotlin中的List
与Java的List
接口类似,但有以下几点需要注意:
listOf
创建的列表是只读的,无法修改元素,仅能读取。mutableListOf
创建的列表可变,可以添加元素或修改元素。List
接口,例如ArrayList
和ArrayListOf
。以下是通过代码实现的示例:
fun main(args: Array) { // 只读列表 val list1: List = listOf("1", "2", "3") list1.forEach { println(it) } // 可变列表 val list2 = mutableListOf("1", "2", "3") list2.add("4") // 添加元素 list2.set(0, "王五") // 修改元素 // 示例:ArrayList val list3 = arrayListOf("2", "3", "4") list3.add("4") list3.set(0, "11") // 自定义 ArrayList val list4 = ArrayList () list4.add("1") }
结果:
list1
:1, 2, 3list2
:4, 2, 3list3
:4, 2, 3list4
:1Kotlin中的Set
与Java的集合有何不同?
Kotlin中的setOf
创建的集合是只读的,无法修改元素,只能读取。使用mutableSetOf
则可以实现可变操作。
与Java类似,Kotlin支持Set
接口,例如TreeSet
。
以下是代码示例:
import java.util.TreeSet fun main(args: Array) { // 只读集合 val set1 = setOf("1", "2", "3") set1.forEach { println(it) } // 可变集合 val set2 = mutableSetOf () set2.add("1") set2.add("2") set2.forEach { println(it) } // 树集合示例 val t1 = TreeSet () t1.add("a") t1.add("2") t1.add("3") t1.forEach { println(it) } println(t1) }
结果:
set1
:1, 2, 3set2
:1, 2t1
:1, 2, 3Kotlin中的Map
与Java的映射有何不同?
Kotlin中的mapOf
创建的映射是只读的,无法添加或修改键值对。使用mutableMapOf
则可以实现可变操作。
与Java类似,Kotlin支持Map
接口,例如HashMap
。
以下是代码示例:
fun main(args: Array) { // 只读映射 val map1 = mapOf("1" to "2", "2" to "3") map1.values.forEach { println(it) } // 可变映射 val map2 = mutableMapOf () map2.put("1", "2") map2.put("2", "3") map2.keys.forEach { println(it) } // HashMap 示例 val hashtable = HashMap () hashtable.put("1", "2") hashtable.put("2", "3") for (value in hashtable.values) { println(value) } }
结果:
map1
:2, 3map2
:1=2, 2=3hashtable
:1=2, 2=3映射遍历示例:
val e1 = map2.entries e1.forEach { println(it) } for ((key: String, value: String) in map2) { println("key=$key, value=$value") }
结果:
1=2, 2=3 key=1, value=2 key=2, value=3转载地址:http://npda.baihongyu.com/