public static Func1<Iterable<String>, String> toJoinedString(final String delimiter) {
        return new Func1<Iterable<String>, String>() {
            @Override
            public String call(Iterable<String> iterable) {
                StringBuilder builder = new StringBuilder();
                boolean first = true;
                for (String string : iterable) {
                    if (first)
                        first = false;
                    else
                        builder.append(delimiter);
                    builder.append(string);
                }
                return builder.toString();
            }
        };
    }
public static Func1 < Iterable < String > , String > toJoinedString ( final String delimiter ) { return new Func1 < Iterable < String > , String > ( ) { @ Override public String call ( Iterable < String > iterable ) { StringBuilder builder = new StringBuilder ( ) ; boolean first = true ; for ( String string : iterable ) { if ( first ) first = false ; else builder . append ( delimiter ) ; builder . append ( string ) ; } return builder . toString ( ) ; } } ; }
Returns a method that can be used with {@link solid.stream.Stream#collect(Func1)}
to convert an iterable stream of {@link String} type into a joined string.

@param delimiter a delimiter
@return a method that converts an iterable stream of {@link String} type into a joined string.