scala - Scala中结合filterNot/match/case的简洁方式

标签 scala

我需要过滤一个序列以删除与特定情况匹配的元素。

这似乎太笨拙了:

val filtered = 
   headers.filterNot{ case Authorization(_) => true; case _ => false }

有没有更简洁/惯用的方式?

最佳答案

您可以使用 isInstanceOf , 像这样

headers.filterNot(_.isInstanceOf[Authorization])

关于scala - Scala中结合filterNot/match/case的简洁方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35496672/

相关文章:

scala - akka-http 和 JsonEntityStreamingSupport

隐式 def 中的 Scala 高级类型失败,错误为 "could not find implicit value"

scala - 使用用户名和密码打开网址

java - Scala 泛型未在 IntelliJ 中正确转换为 Java

斯卡拉 3 : inline vs quoted (macros)

java - 使用 GSON(或任何其他库)将 JSON 转换为 Java/Scala -> Bean 结构不清楚

scala - ZIO Fiber orElse 生成异常消息

scala - 将 ScalaTest 与 SBT android-sdk-plugin 一起使用

generics - Scala 集合中的泛型类

scala - 在设置值之前修改案例类构造函数参数