On 5/31/16 6:31 PM, Joseph D. Darcy wrote:
The String.join javadoc contains some sample code to demonstrate how to use the
method. The sample code can be improved with the new-in-JDK-9 List convenience
factory method. Please review this patch to update the sample code:

--- a/src/java.base/share/classes/java/lang/String.java    Tue May 31 17:54:41
2016 -0700
+++ b/src/java.base/share/classes/java/lang/String.java    Tue May 31 18:27:45
2016 -0700
@@ -2424,9 +2424,7 @@
      *
      * <blockquote>For example,
      * <pre>{@code
-     *     List<String> strings = new LinkedList<>();
-     *     strings.add("Java");strings.add("is");
-     *     strings.add("cool");
+     *     List<String> strings = List.of("Java", "is", "cool");
      *     String message = String.join(" ", strings);
      *     //message returned is: "Java is cool"
      *

This change looks good: +1 for removing a usage of LinkedList, +1 for removing multiple statements on the same line, and +1 for using the new JEP 269 API!

(A corresponding update should *not* be made to the String.join sample using a
Set since the Set convenience factory methods do not guarantee ordering.)

Correct.

But the Set example is:

     Set<String> strings = new LinkedHashSet<>();
     strings.add("Java"); strings.add("is");
     strings.add("very"); strings.add("cool");
     String message = String.join("-", strings);

It would be good if you could make the add() calls one per line.

Alternatively, you could do

    Set<String> strings =
        new LinkedHashSet<>(List.of("Java", "is", "very", "cool"));
    String message = String.join("-", strings);

Up to you.

s'marks

"very-cool-Java-is" -- Yoda

Reply via email to