序列运算符
本课属于 Coddy Kotlin 学习旅程的“基础知识”单元。第 81 课,共 93 课。
Kotlin 提供了 + 运算符来合并列表,让你可以轻松地将多个集合合并在一起。这与拼接字符串的方式类似。
要将两个列表合并为一个,只需使用 + 运算符:
val first = listOf(1, 2, 3)
val second = listOf(4, 5, 6)
val combined = first + second
println(combined) // [1, 2, 3, 4, 5, 6]你还可以使用相同的运算符向列表中添加单个元素:
val colors = listOf("Red", "Green")
val moreColors = colors + "Blue"
println(moreColors) // [Red, Green, Blue]- 运算符会从列表中移除元素。它会创建一个不包含指定元素的新列表:
val numbers = listOf(1, 2, 3, 2, 4)
val result = numbers - 2
println(result) // [1, 3, 2, 4]请注意,只会移除元素的第一次出现。要移除所有匹配的元素,你可以减去一个列表:
val numbers = listOf(1, 2, 3, 2, 4)
val result = numbers - listOf(2)
println(result) // [1, 3, 4]这些运算符总是返回一个新列表:原列表保持不变。使用它们很安全,不用担心意外修改数据。
挑战
中等你会收到两个整数列表和一个要删除的整数。使用 + 运算符合并两个列表,然后使用 - 运算符和一个列表删除指定整数的所有出现项。
打印结果列表。
输入格式:
- 第一行:一个整数
n,表示第一个列表中的元素数量 - 接下来的
n行:第一个列表中的整数 - 接下来一行:一个整数
m,表示第二个列表中的元素数量 - 接下来的
m行:第二个列表中的整数 - 最后一行:要从合并后的列表中删除的整数
输出格式:
按照 Kotlin 默认的列表格式打印结果列表。
示例:
如果第一个列表是 [1, 2, 3],第二个列表是 [2, 4, 2],要删除的数字是 2,那么合并后的列表是 [1, 2, 3, 2, 4, 2]。删除所有 2 后,输出应为:
[1, 3, 4]亲手试试
fun main() {
// 读取第一个列表
val n = readLine()!!.toInt()
val list1 = mutableListOf<Int>()
repeat(n) {
list1.add(readLine()!!.toInt())
}
// 读取第二个列表
val m = readLine()!!.toInt()
val list2 = mutableListOf<Int>()
repeat(m) {
list2.add(readLine()!!.toInt())
}
// 读取要删除的整数
val toRemove = readLine()!!.toInt()
// TODO: 在这里编写你的代码
// 使用 + 运算符合并两个列表
// 使用 - 运算符和列表,删除所有等于 toRemove 的元素
// 输出结果列表
println(result)
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: Kotlin 在线编辑器