如何在 Scala 中合并列表
列表是包含不可变数据的集合。 List 表示 Scala 中的链表。 Scala List 类包含一个有序的线性项目列表。列表是不可变的,代表一个链表。
列表的语法:
val variable_name: List[type] = List(item1, item2, item3)
or
val variable_name = List(item1, item2, item3)
以下是合并列表的三种不同方式:
- 使用 ++
- 使用 :::
- 使用连接
以下是在 Scala 中合并两个列表的各种方法:
通过使用++方法
例子:
Scala
// Scala program to merge lists
// Creating object
object GFG
{
// Main method
def main(args:Array[String])
{
// Creating Lists
val a = List("geeks", "for", "geeks")
val b = List("is", "a", "computer science", "portal")
val c = List("for", "geeks")
// Merging Lists
val d = a ++ b ++ c
println("After merging lists ")
println(d)
}
}
Scala
// Scala program to merging two lists
// Creating object
object GFG
{
// Main method
def main(args:Array[String])
{
// Creating a List.
val a = List("Languages", "are")
val b = List("C++", "Java", "C#", "Python", "Scala")
// Merging two lists
val c = a ::: b
println("After merging lists")
println(c)
}
}
Scala
// Scala program merging two lists
// Creating object
object GFG
{
// Main method
def main(args:Array[String])
{
// Creating a List.
val a = List(1, 2, 3)
val b = List(4, 5, 6)
// concatenate two lists
val c = List.concat(a, b)
println("After merging lists")
println(c)
}
}
输出:
After merging lists
List(geeks, for, geeks, is, a, computer science, portal, for, geeks)
在上面的示例中,我们使用 ++ 方法连接列表。此方法在不可变集合中一致使用
通过使用 :::
如果我们经常使用 List 类,我们可能更喜欢使用 ::: 方法。
例子:
斯卡拉
// Scala program to merging two lists
// Creating object
object GFG
{
// Main method
def main(args:Array[String])
{
// Creating a List.
val a = List("Languages", "are")
val b = List("C++", "Java", "C#", "Python", "Scala")
// Merging two lists
val c = a ::: b
println("After merging lists")
println(c)
}
}
通过使用 concat 方法
例子:
斯卡拉
// Scala program merging two lists
// Creating object
object GFG
{
// Main method
def main(args:Array[String])
{
// Creating a List.
val a = List(1, 2, 3)
val b = List(4, 5, 6)
// concatenate two lists
val c = List.concat(a, b)
println("After merging lists")
println(c)
}
}
输出:
After merging lists
List(1, 2, 3, 4, 5, 6)