卡拉:为理解的选择

0

的问题

我有一个选项的Seq的一些项目:

Option[Seq[MyItem]]

MyItem有领域'description'

我需要找到是否有一项具有具体的描述。

怎样才可以完成用于理解?

scala
2021-11-23 12:01:45
1

最好的答案

2

如果你想测试是否有任何元素 Option[Seq[MyItem]] 有一个具体描述,然后你可以这样做。

opt.exists(_.exists(_.description == ???))

如果你真的需要一个解决方案,使用 for 然后我就帮不了你:)

2021-11-23 12:20:57

实际上,我这样做。 但我担心的可读性不是很好,所以我在寻找解析. 但是,似乎为推导不工作时,第一发电机已经选项来处理。
Mandroid

可读性取决于众,但是对于主管卡拉的程序员 exists 版本是非常清楚的。 for 适用于处理一个集合成一个,但这一任务是生产一个单一的价值从收集。 你需要一个 foldcollect 操作,但这是不会有任何再清楚不过了 exists.
Tim

一个用于理解上的 Option[Seq[MyItem]] 不会的工作。 然而,它将在工作 Seq[Option[MyItem]]. 只用存\倍\收集尽可能提到由@蒂姆
gatear

其他语言

此页面有其他语言版本

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................