Scala,如何遍历序列

Scala,如何遍历序列,scala,Scala,我有一个Seq[Object],我想遍历每个对象,检查它的一个布尔属性是否为true/false。我尝试使用flatmap后跟filter,但它不起作用: val systemResourcesExpandable = host.systemResources flatMap (.child) filter { childseq => for { child <- childseq; child.config flatMap (.cpuAlloca

我有一个
Seq[Object]
,我想遍历每个对象,检查它的一个布尔属性是否为true/false。我尝试使用
flatmap
后跟
filter
,但它不起作用:

val systemResourcesExpandable = host.systemResources flatMap (.child) filter { childseq => 
   for { 
      child <- childseq; 
      child.config flatMap (.cpuAllocation) flatMap (_.expandableReservation) 
   } yield { child } 
}
val systemResourcesExpandable=host.systemResources平面图(.child)过滤器{childseq=>
对于{

child想象你有以下几点:

case class Stuff(p: Int, b: Boolean = false)
然后你创建了这些人的列表:

val x = List(Stuff(1), Stuff(2), Stuff(3, true))
现在,如果您想知道其中一个是否已将
b
设置为
true
,只需执行以下操作:

x.exists(_.b)

假设对象如下所示

case class MyObject(intProp: Int, boolProp: Boolean)
像这样的序列

val mySequence = Seq(obj1, obj2, obj3)
然后使用以下逻辑过滤掉boolProp上的假布尔条件

mySequence.filter(x => x.boolProp)
此操作仅返回boolProp为true的对象的新序列。请注意,这不会修改序列,而是返回一个新序列。

val systemResourcesExpandable:Option[Seq[SystemResources.Child]=host.SystemResources平面图(uu.Child)过滤器{childseq=>
 val systemResourcesExpandable : Option[Seq[SystemResources.Child]] = host.systemResources flatMap (_.child)  filter { childseq =>
    for{
         child <- childseq;
        expandablereservation  <-child.config flatMap (_.cpuAllocation) flatMap (_.expandableReservation)
        if (expandablereservation)

    } yield {
        child
    }
  }
为了{
孩子,你能发布你的代码片段,并解释到底是什么不起作用吗?@Ren你能看看这个并帮助不要发布新的问题作为答案。请更新你原来的问题。谢谢你的解释!!