This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-collections.git


The following commit(s) were added to refs/heads/master by this push:
     new a18086f  Reimplement SortedProperties#keys() a la Java 8.
a18086f is described below

commit a18086f23be65370e36c90cc5dd213b9ec0b1b3e
Author: Gary Gregory <[email protected]>
AuthorDate: Tue Sep 28 10:25:49 2021 -0400

    Reimplement SortedProperties#keys() a la Java 8.
    
    Use final.
---
 .../commons/collections4/properties/SortedProperties.java | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git 
a/src/main/java/org/apache/commons/collections4/properties/SortedProperties.java
 
b/src/main/java/org/apache/commons/collections4/properties/SortedProperties.java
index 7a36d80..3ccb2e1 100644
--- 
a/src/main/java/org/apache/commons/collections4/properties/SortedProperties.java
+++ 
b/src/main/java/org/apache/commons/collections4/properties/SortedProperties.java
@@ -26,6 +26,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Properties;
 import java.util.Set;
+import java.util.stream.Collectors;
 
 import org.apache.commons.collections4.iterators.IteratorEnumeration;
 
@@ -43,21 +44,15 @@ public class SortedProperties extends Properties {
 
     @Override
     public synchronized Enumeration<Object> keys() {
-        final Set<Object> keySet = keySet();
-        final List<String> keys = new ArrayList<>(keySet.size());
-        for (final Object key : keySet) {
-            keys.add(key.toString());
-        }
-        Collections.sort(keys);
-        return new IteratorEnumeration<>(keys.iterator());
+        return new 
IteratorEnumeration<>(keySet().stream().map(Object::toString).sorted().collect(Collectors.toList()).iterator());
     }
 
     @Override
     public Set<Map.Entry<Object, Object>> entrySet() {
-        Enumeration<Object> keys = keys();
-        Set<Map.Entry<Object, Object>> entrySet = new LinkedHashSet<>();
+        final Enumeration<Object> keys = keys();
+        final Set<Map.Entry<Object, Object>> entrySet = new LinkedHashSet<>();
         while (keys.hasMoreElements()) {
-            Object key = keys.nextElement();
+            final Object key = keys.nextElement();
             entrySet.add(new AbstractMap.SimpleEntry<>(key, 
getProperty((String) key)));
         }
         return entrySet;

Reply via email to