Duplicate :
|
A DESCRIPTION OF THE REQUEST : 1. Add a stream() method to java.lang.Enum. This will simplify dealing with enum values, instead of calling values() which returns an array. 2. Add an overload of method of() to EnumSet that uses a predicate to determine the elements in the set; public static <E extends Enum<E>> Set<E> of(final Predicate<E> aPredicate). JUSTIFICATION : Not necessary but would simplify functional programming using enums: 1. Enum.stream() Currently have to obtain a stream indirectly, e.g: (a) call values() to get an array of enum values, convert the array to a List, call stream() on the List. or (b) call EnumSet.allOf(elementType) to get an EnumSet of the values and call stream on the EnumSet. 2. EnumSet.of(Predicate<E>) The current of() methods select by element identity. EnumSet.of(Predicate<E>) would select elements by their properties. EXPECTED VERSUS ACTUAL BEHAVIOR : EXPECTED - Not applicable ACTUAL - Not applicable ---------- BEGIN SOURCE ---------- Not applicable ---------- END SOURCE ----------