2017-12-27 13 views
2

Ich benutze Lambda-Ausdrücke. Was entspricht dies:werfen Ausnahme in Lambda - Java 8

for (Integer id: ids) { 
    if (!repository.exists(id)) { 
     throw new Exception ..... 
    } 
} 

Ich habe versucht, mit diesem:

ids.stream().filter(id-> repository.exists(idStatut)).findAny().orElseThrow(() -> 
       new Exception... 
      ); 

Aber es funktioniert nicht gut

Antwort

5

Basierend auf Ihrer ursprünglichen Schleife, möchten Sie eine Ausnahme werfen, wenn irgendwelche der Integer s übergeben nicht den Filter:

if (ids.stream().anyMatch(id -> !repository.exists(id))) 
    throw new Exception ... 
+0

Danke! Ich habe den ganzen Morgen damit verschwendet -_- " – Sue

+0

@Eran - Weil einige SUPER HEROES programmieren. –