Here you can find the source of join(Collection collection, String separator)
Parameter | Description |
---|---|
collection | collection to call toString() on each element |
separator | separator string |
public static String join(Collection collection, String separator)
//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); } }