ฉันมีทางเลือกของ Seq ของบางรายการ:
Option[Seq[MyItem]]
MyItem มีสนาม'รายละเอียด'
ฉันต้องการที่จะค้นหาว่าหนึ่งในรายการมีเฉพาะรายละเอียด.
เป็นไปได้ยังไงที่มันจะทำการใช้สำหรับรู้จักเล?
ฉันมีทางเลือกของ Seq ของบางรายการ:
Option[Seq[MyItem]]
MyItem มีสนาม'รายละเอียด'
ฉันต้องการที่จะค้นหาว่าหนึ่งในรายการมีเฉพาะรายละเอียด.
เป็นไปได้ยังไงที่มันจะทำการใช้สำหรับรู้จักเล?
ถ้าคุณต้องการทดสอบว่ามีธาตุของ Option[Seq[MyItem]]
มีเฉพาะรายละเอียดงั้นคุณสามารถทำสิ่งนี้ได้
opt.exists(_.exists(_.description == ???))
ถ้าคุณต้องการทางออกนั้นใช้ for
งั้นฉันไม่สามารถช่วยคุณ:)
exists
เวอร์ชั่นเป็นอย่างชัดเจน for
คือเหมาะสมสำหรับการประมวลผลหนึ่งคลังภาพไปยังอีกแต่งานนี้คือการแสดงเดี่ยวค่าจากคนจะได้ปลอดภัย สำหรับที่คุณต้องการ fold
หรือ collect
ปฏิบัติการแต่มันจะไม่เป็นอะไรชัดขึ้นได้ว่า exists
. Option[Seq[MyItem]]
จะไม่ทำงาน แต่มันจะทำงานอยู่ Seq[Option[MyItem]]
. แค่ใช้อยู่ก่อน\หรือจะเรียกว่าอดีตจนท.\สะสมที่พูดถึงโดย@ทิม