Java String Join join(Collection collection, String separator)

Here you can find the source of join(Collection collection, String separator)

Description

Join an collection of objects with a separator that appears after every instance in the list -including at the end

License

Apache License

Parameter

Parameter Description
collection collection to call toString() on each element
separator separator string

Return

the joined entries

Declaration

public static String join(Collection collection, String separator) 

Method Source Code

//package com.java2s;
/*//from   w  ww  .j  av a2 s .  c o  m
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import java.util.Arrays;
import java.util.Collection;

public class Main {
    /**
     * Join an collection of objects with a separator that appears after every
     * instance in the list -including at the end
     * @param collection collection to call toString() on each element
     * @param separator separator string
     * @return the joined entries
     */
    public static String join(Collection collection, String separator) {
        return join(collection, separator, true);
    }

    /**
     * Join an collection of objects with a separator that appears after every
     * instance in the list -optionally at the end
     * @param collection collection to call toString() on each element
     * @param separator separator string
     * @param trailing add a trailing entry or not
     * @return the joined entries
     */
    public static String join(Collection collection, String separator,
            boolean trailing) {
        StringBuilder b = new StringBuilder();
        // fast return on empty collection
        if (collection.isEmpty()) {
            return trailing ? separator : "";
        }
        for (Object o : collection) {
            b.append(o);
            b.append(separator);
        }
        int length = separator.length();
        String s = b.toString();
        return (trailing || s.isEmpty()) ? s : (b.substring(0, b.length()
                - length));
    }

    /**
     * Join an array of strings with a separator that appears after every
     * instance in the list -including at the end
     * @param collection strings
     * @param separator separator string
     * @return the joined entries
     */
    public static String join(String[] collection, String separator) {
        return join(collection, separator, true);

    }

    /**
     * Join an array of strings with a separator that appears after every
     * instance in the list -optionally at the end
     * @param collection strings
     * @param separator separator string
     * @param trailing add a trailing entry or not
     * @return the joined entries
     */
    public static String join(String[] collection, String separator,
            boolean trailing) {
        return join(Arrays.asList(collection), separator, trailing);
    }
}

Related

  1. invertPhoneNumber(String storedNumber, String joinString)
  2. Join(ArrayList list, String delimiter)
  3. join(boolean endSlash, Collection paths)
  4. join(Collection items, String delimiter)
  5. join(Enumeration enumeration, String s)
  6. join(Enumeration values, CharSequence separator)
  7. join(final Collection input, final String link)