code: public static <T> T find(Collection<T> self, @ClosureParams(FirstParam.FirstGenericType.class) Closure closure) {
          BooleanClosureWrapper bcw = new BooleanClosureWrapper(closure);
          for (T value : self) {
              if (bcw.call(value)) {
                  return value;
              }
          }
          return null;
      }
docs: Finds the first value matching the closure condition.  Example:
  <pre class="groovyTestCase">def list = [1,2,3]
  assert 2 == list.find { it {@code >} 1 }
  </pre>
  
  @param self    a Collection
  @param closure a closure condition
  @return the first Object found, in the order of the collections iterator, or null if no element matches
  @since 1.0