code: public static <K, R> Observable<R> switchCase(Func0<? extends K> caseSelector,
              Map<? super K, ? extends Observable<? extends R>> mapOfCases, Scheduler scheduler) {
          return switchCase(caseSelector, mapOfCases, Observable.<R> empty().subscribeOn(scheduler));
      }
docs: Return a particular one of several possible Observables based on a case
  selector and run it on the designated scheduler.
  <p>
  <img width="640" src="https://raw.github.com/wiki/ReactiveX/RxJava/images/rx-operators/switchCase.s.png" alt="">
  
  @param <K>
  the case key type
  @param <R>
  the result value type
  @param caseSelector
  the function that produces a case key when an
  Observer subscribes
  @param mapOfCases
  a map that maps a case key to an Observable
  @param scheduler
  the scheduler where the empty observable is observed
  @return a particular Observable chosen by key from the map of
  Observables, or an empty Observable if no Observable matches the
  key, but one that runs on the designated scheduler in either case