[ 
https://issues.apache.org/jira/browse/LANG-701?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13494155#comment-13494155
 ] 

Matt Benson commented on LANG-701:
----------------------------------

The current {{join}} APIs allow Objects for greatest ease.  Often the user may 
want a quick way to format several objects into a delimited String.  The whole 
{{joinWith}} approach seems to be feinting in the fluent direction of which 
several of us, myself included, seem to have become so fond.  Possible 
approaches include forgetting about the {{boolean}} parameter as Gary suggests; 
Another possibility could be making it the first argument in the overloaded 
form in which it appears.  This seems to obscure the semantic intent of the 
method, however (IMO, boolean arguments often do).  I am inclined to do the 
following:

* forget about the end separator... I'll come back to this.
* create similar APIs in {{StringUtils}} and {{StrBuilder}} to handle joins 
with varargs:
** {{StrBuilder#appendAllWith(String separator, T... objects)}} doesn't 
necessarily make sense; I might therefore prefer to reintroduce 
{{WithSeparator}} for consistency across both APIs
* if a user needs the end separator as well, just use {{new 
StrBuilder().appendAllWithSeparator(separator, ...).append(separator)}}

Thoughts?
                
> StringUtils join with var args
> ------------------------------
>
>                 Key: LANG-701
>                 URL: https://issues.apache.org/jira/browse/LANG-701
>             Project: Commons Lang
>          Issue Type: New Feature
>          Components: lang.*
>            Reporter: Gabriele Kahlout
>            Priority: Minor
>             Fix For: 3.x
>
>         Attachments: VarArgJoinTest.java
>
>
> <code>
> final String apple = "apple";
>         final String banana = "banana";
>         final String orange = "orange";
>         final String expected = apple +  SPACE + banana + SPACE + orange;
>         final String  actual = join(SPACE, apple, banana, orange);
>         final int expLength = expected.length();
>         final int actLength = actual.length();
>         assertEquals(expLength, actLength);
>         assertEquals(expected, actual);
> </code>
> I missed the functionality of joining strings with the space separator in one 
> line. BTW, why space ' ' not a constant field anywhere?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to