code: public T findItem (Predicate<T> p)
      {
          if (_items == null) {
              return null;
          }
          for (T item : _items) {
              if (p.apply(item)) {
                  return item;
              }
          }
          return null;
      }
docs: Returns the first item that matches the supplied predicate or null if no items in this model
  matches the predicate.