小编Rob*_*b Z的帖子

使用另一个单词从一个列表中过滤单词

我是一个相对较新的程序员,通过udemy类学习scala和函数式编程.

我正在寻找根据另一个字符串列表过滤字符串列表.我想减少第一个列表,这样当我打印出来时,它只包含单词 - "rob","learn","scala"

这是我正在使用的代码:

val list1:Array[String] = Array("rob","you", "to","learns", "your", "the","scala", "a")

val badWords:Array[String] = Array("you", "to", "your", "the", "a")

val list2 = list1.map(x => badWords.map(badWord => list1.filter(word => word != badWord)))

for (word <- list2) {
  println(word)
}
Run Code Online (Sandbox Code Playgroud)

我的逻辑是,对于list1中的每个单词,然后我尝试将每个badWord元素与当前list1项进行比较,以确定是否应该对其进行过滤.

我通过硬编码成功地运行了我想要过滤的内容,例如val list2 = list1.filter(_ != "to").显然,我想让它具有扩展能力,所以我想学习如何配对滤波器和映射函数(如果这是正确的方法).

在此先感谢,如果我应该提供进一步的信息或背景,请告诉我.

functional-programming scala filter

1
推荐指数
1
解决办法
2430
查看次数

标签 统计

filter ×1

functional-programming ×1

scala ×1