我有这个班级
case class User(var userId: Int, var userName: String, var email:
String, var password: String) {
def this() = this(0, "", "", "")
}
我有两个列表相同的用户类型列表 团队成员 usrList
我想将两者连接成一个团队成员。我不知道如何做到这一点,所以尝试:
teamMembers:::usrList
teamMembers = teamMembers:::usrList
teamMembers++usrList
teamMembers = teamMembers++usrList
似乎没有任何效果。我想这一定很容易。只是难以理解scala doc。如何将它们连接成一个。
答案 0 :(得分:1)
目前还不清楚你的实际问题是什么,使用非常简单:
val a = List(1,2,3)
val b = List(4,5,6)
val c = a ::: b // List(1, 2, 3, 4, 5, 6)
val d = a ++ b // List(1, 2, 3, 4, 5, 6)
也许你缺少的是连接会产生一个 new 列表,它是前两个的串联?或者你不能重新分配val,所以你需要分配一个新的变量名?
答案 1 :(得分:0)
考虑运营商++=
将列表附加到(可变)列表;例如
case class User(var userId: Int = 0,
var userName: String = "",
var email: String = "",
var password: String = "")
和
var teamMembers = List ( User(0), User(1) )
val usrList = List( User(3) )
我们有那个
teamMembers ++= usrList
等等
teamMembers
List[User] = List(User(0,,,), User(1,,,), User(3,,,))
另一种方法涉及
teamMembers = List(teamMembers, usrList).flatten
即,我们创建一个列表列表并将它们展平到列表中。