Java Iterable Join join(Iterable strings)

Here you can find the source of join(Iterable strings)

Description

Concatenates strings, using whitespaces as separator.

License

Apache License

Parameter

Parameter Description
strings Strings to join.

Declaration

public static String join(Iterable<String> strings) 

Method Source Code

//package com.java2s;
/**//from ww  w.  j  av  a2 s .c om
 * 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.Iterator;

public class Main {
    /**
     * Concatenates strings, using a separator.
     *
     * @param separator Separator to join with.
     * @param strings Strings to join.
     */
    public static String join(CharSequence separator, Iterable<?> strings) {
        Iterator<?> i = strings.iterator();
        if (!i.hasNext()) {
            return "";
        }
        StringBuilder sb = new StringBuilder(i.next().toString());
        while (i.hasNext()) {
            sb.append(separator);
            sb.append(i.next().toString());
        }
        return sb.toString();
    }

    /**
     * Concatenates strings, using whitespaces as separator.
     *
     * @param strings Strings to join.
     */
    public static String join(Iterable<String> strings) {
        return join(" ", strings);
    }

    /**
     * Concatenates strings, using whitespaces as separator.
     *
     * @param strings Strings to join.
     */
    public static String join(char separator, Iterable<?> strings) {
        return join(separator + "", strings);
    }

    /**
     * Concatenates strings, using a separator.
     *
     * @param separator to join with
     * @param strings to join
     * @return  the joined string
     */
    public static String join(CharSequence separator, String[] strings) {
        // Ideally we don't have to duplicate the code here if array is iterable.
        StringBuilder sb = new StringBuilder();
        boolean first = true;
        for (String s : strings) {
            if (first) {
                first = false;
            } else {
                sb.append(separator);
            }
            sb.append(s);
        }
        return sb.toString();
    }

    public static String join(char separator, String[] strings) {
        return join(separator + "", strings);
    }
}

Related

  1. join(Iterable s, String delimiter)
  2. join(Iterable s, String delimiter)
  3. join(Iterable s, String delimiter)
  4. join(Iterable source, char delimiter)
  5. join(Iterable source, String separator)
  6. join(Iterable strings, String delimiter)
  7. join(Iterable strings, String separator)
  8. join(Iterable array, String joiner)
  9. join(Iterable coll, String sep)