我想根据条件将元素列表附加到另一个列表.例如:找到下面的代码.
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)
}
}
Run Code Online (Sandbox Code Playgroud)
当我执行这个我得到空列表.
该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)
Run Code Online (Sandbox Code Playgroud)
但是,在像Scala这样的函数式语言中,最佳实践是使用不可变集合.使用该filter方法可以非常轻松地完成您的任务.
val a = List(1,2,3,4,5)
val b = a.filter(_ > 3)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3359 次 |
| 最近记录: |