作者:mobiledu2502934511 | 来源:互联网 | 2022-12-04 12:29
我想根据条件将元素列表附加到另一个列表.例如:找到下面的代码.
package test
object main {
def main(args: Array[String]): Unit ={
val a = List(1,2,3,4,5)
val b= List[Int]()
for(x <- a){
if (x>3){
b:+x
}
}
println(b)
}
}
当我执行这个我得到空列表.
1> marstran..:
该List
班是Scala不可改变的,所以你不能元素添加到它.如果你真的需要一个可变列表,你可以使用MutableList
.
val a = List(1,2,3,4,5)
val b= MutableList[Int]()
for (x <- a) {
if (x > 3) {
b += x
}
}
println(b)
但是,在像Scala这样的函数式语言中,最佳实践是使用不可变集合.使用该filter
方法可以非常轻松地完成您的任务.
val a = List(1,2,3,4,5)
val b = a.filter(_ > 3)