add support for renaming and post processing of csv columns
This commit is contained in:
@@ -20,12 +20,12 @@ public class CollectionUtils {
|
||||
|
||||
public boolean test(T valueA);
|
||||
|
||||
public static <T, V> Compare<T> compare(Function<? super T, ? extends V> keyExtractor, V value) {
|
||||
public static <T, V> Compare<T> compare(final Function<? super T, ? extends V> keyExtractor, final V value) {
|
||||
Objects.requireNonNull(keyExtractor);
|
||||
return t -> Objects.equals(keyExtractor.apply(t), value);
|
||||
}
|
||||
|
||||
default Compare<T> thenCompare(Compare<? super T> other) {
|
||||
default Compare<T> thenCompare(final Compare<? super T> other) {
|
||||
Objects.requireNonNull(other);
|
||||
return t -> {
|
||||
final boolean res = test(t);
|
||||
@@ -33,12 +33,12 @@ public class CollectionUtils {
|
||||
};
|
||||
}
|
||||
|
||||
default <V> Compare<T> thenCompare(Function<T, ? extends V> keyExtractor, V value) {
|
||||
default <V> Compare<T> thenCompare(final Function<T, ? extends V> keyExtractor, final V value) {
|
||||
return thenCompare(compare(keyExtractor, value));
|
||||
}
|
||||
}
|
||||
|
||||
public static <T> List<T> copySort(Collection<? extends T> collection, Comparator<T> comparator) {
|
||||
public static <T> List<T> copySort(final Collection<? extends T> collection, final Comparator<T> comparator) {
|
||||
final List<T> result = new ArrayList<T>(collection);
|
||||
Collections.sort(result, comparator);
|
||||
return result;
|
||||
@@ -115,9 +115,9 @@ public class CollectionUtils {
|
||||
return -1;
|
||||
}
|
||||
|
||||
public static <T> boolean contains(Collection<T> collection, final Compare<T> compare) {
|
||||
for (T t : collection) {
|
||||
boolean found = compare.test(t);
|
||||
public static <T> boolean contains(final Collection<T> collection, final Compare<T> compare) {
|
||||
for (final T t : collection) {
|
||||
final boolean found = compare.test(t);
|
||||
if (found) {
|
||||
return true;
|
||||
}
|
||||
@@ -125,10 +125,10 @@ public class CollectionUtils {
|
||||
return false;
|
||||
}
|
||||
|
||||
public static <T> long count(Collection<T> collection, final Compare<T> compare) {
|
||||
public static <T> long count(final Collection<T> collection, final Compare<T> compare) {
|
||||
long count = 0;
|
||||
for (T t : collection) {
|
||||
boolean found = compare.test(t);
|
||||
for (final T t : collection) {
|
||||
final boolean found = compare.test(t);
|
||||
if (found) {
|
||||
count++;
|
||||
}
|
||||
@@ -154,4 +154,10 @@ public class CollectionUtils {
|
||||
return result;
|
||||
}
|
||||
|
||||
public static <O> void addNCopies(final Collection<O> collection, final int numCopies, final O obj) {
|
||||
for (int i = 0; i < numCopies; i++) {
|
||||
collection.add(obj);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user