2016-07-05 9 views

Antwort

11

Karte es!

Observable<List<UserProfile>> findUser = service.getUserProfiles(); 
Observable<UserProfile> firstUser = findUser 
    .filter(list -> !list.isEmpty()) 
    .map(list -> list.get(0)); 
+0

Dank. Was passiert, wenn 'list.isEmpty()' true zurückgibt? – znat

+0

In diesem Fall gibt das beobachtbare "Filter" keine Elemente aus. Daher wird die folgende map() nicht aufgerufen, da das beobachtbare Filter keine Elemente ausgibt. – Mehlyfication

3

Ohne siehe was noch auf getUserProfile gehen() es ist kompliziert, aber was ist mit diesem

@Test 
public void getFirstUser(){ 
    Observable<List<Integer>> findUser =Observable.just(Arrays.asList(1,2,3)); 
    Observable<Integer> user = findUser 
      .flatMap(Observable::from) 
      .first(); 
    user.subscribe(System.out::println); 
}