
org.jtwig.reflection.util.Lists2 Maven / Gradle / Ivy
package org.jtwig.reflection.util;
import com.google.common.base.Function;
import com.google.common.base.Optional;
import com.google.common.base.Predicate;
import java.util.ArrayList;
import java.util.List;
public final class Lists2 {
private Lists2 () {}
public static List transform (List inputList, Function transformation) {
List result = new ArrayList();
for (I input : inputList) {
result.add(transformation.apply(input));
}
return result;
}
public static List filter (List inputList, Predicate filter) {
List result = new ArrayList();
for (T input : inputList) {
if (filter.apply(input)) {
result.add(input);
}
}
return result;
}
public static Optional find(List list, Predicate predicate) {
for (T element : list) {
if (element != null && predicate.apply(element)) {
return Optional.of(element);
}
}
return Optional.absent();
}
public static int positionOf(List inputParameters, Predicate predicate) {
for (int i = 0; i < inputParameters.size(); i++) {
if (predicate.apply(inputParameters.get(i))) {
return i;
}
}
return -1;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy