sagen für z.B.mehrere Filterbedingungen anwenden und nur ein Element aus einer Liste erzeugen
scala> case class Entitlement(read: Boolean, edit: Boolean, create: Boolean, delete: Boolean)
defined class Entitlement
scala> List (Entitlement(read= true, edit = true, create= false, delete =false),Entitlement(read= true, edit = false, create= false, delete =false),Entitlement(read= true, edit = true, create= false, delete =true))
res0: List[Entitlement] = List(Entitlement(true,true,false,false),
Entitlement(true,false,false,false), Entitlement(true,true,false,true))
Gibt es eine Möglichkeit, eines zu erstellen und eine ONLY Entitlement(true,true,false,true)
mit einem einzigen Durchlauf einer Liste res0
, so dass es durch die Liste gehen werde und wenn read=true
das ist gefunden das endgültige read
Privileg else default value for read=false
- wenn edit=true
das ist gefunden das letzte edit
Privileg else default value for edit=false
und so weiter. in diesem Spielzeug Beispiel create=false
in allen der Entitlement
Elemente im List
warum Endergebnis
Entitlement(true,true,false,true)
Der Nachteil ist, dass es nicht funktioniert, wenn 'res0' leer sein kann. –
Ja. Zustimmen. Wenn die Liste leer sein kann, ist fold die richtige Option. – Jegan