如何在那个案例 class 的列表中使用案例 classes 的复制方法?
how can I use the copy method for case classes on a list of that case class?
我有一个记录列表(记录是一个案例class)。我正在尝试同时更新列表中的所有记录(使用复制功能)和 return 更新记录列表。
我尝试使用 foreach 方法,但它不允许我生成列表。
这是我目前尝试的方法,我不确定是否正确
def update_record(record: List[Rec]): List[Rec] = {
val result = record.foreach(r => {
r.copy(firstname = get_firstname(r, record), lastname = get_lastname(r, record))
})
result
}
但结果没有生成列表,所以我不确定现在该怎么做。
您只需要使用 map
而不是 foreach
。
def update_record(record: List[Rec]: List[Rec] =
record.map { r =>
r.copy(firstname = get_firstname(r, record), lastname = get_lastname(r, record))
}
无论如何,学习一些教程或课程或阅读有关该语言的书籍会很好。这只是标准库的基础知识。
一些可能有用的链接:
我有一个记录列表(记录是一个案例class)。我正在尝试同时更新列表中的所有记录(使用复制功能)和 return 更新记录列表。 我尝试使用 foreach 方法,但它不允许我生成列表。
这是我目前尝试的方法,我不确定是否正确
def update_record(record: List[Rec]): List[Rec] = {
val result = record.foreach(r => {
r.copy(firstname = get_firstname(r, record), lastname = get_lastname(r, record))
})
result
}
但结果没有生成列表,所以我不确定现在该怎么做。
您只需要使用 map
而不是 foreach
。
def update_record(record: List[Rec]: List[Rec] =
record.map { r =>
r.copy(firstname = get_firstname(r, record), lastname = get_lastname(r, record))
}
无论如何,学习一些教程或课程或阅读有关该语言的书籍会很好。这只是标准库的基础知识。
一些可能有用的链接: