Here you can find the source of stringJoin(Object[] array, String separator)
public static String stringJoin(Object[] array, String separator)
//package com.java2s; /*// w ww .j a v a 2 s . c o m This file belongs to the Servoy development and deployment environment, Copyright (C) 1997-2010 Servoy BV This program is free software; you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program; if not, see http://www.gnu.org/licenses or write to the Free Software Foundation,Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 */ import java.util.ArrayList; import java.util.Arrays; import java.util.Iterator; import java.util.List; public class Main { public static String stringJoin(Object[] array, char separator) { if (array == null) return null; return stringJoin(Arrays.asList(array).iterator(), separator); } public static String stringJoin(Object[] array, String separator) { if (array == null) return null; return stringJoin(Arrays.asList(array).iterator(), separator); } /** * <p> * Joins the elements of the provided <code>Iterator</code> into a single String containing the provided elements. * </p> * * <p> * No delimiter is added before or after the list. Null objects or empty strings within the iteration are represented by empty strings. * </p> * * @param iterator the <code>Iterator</code> of values to join together, may be null * @param separator the separator character to use * @return the joined String, <code>null</code> if null iterator input */ public static String stringJoin(Iterator<?> iterator, char separator) { if (iterator == null) { return null; } StringBuilder buf = new StringBuilder(256); // Java default is 16, probably too small while (iterator.hasNext()) { Object obj = iterator.next(); if (obj != null) { buf.append(obj); } if (iterator.hasNext()) { buf.append(separator); } } return buf.toString(); } public static String stringJoin(Iterator<?> iterator, String separator) { if (iterator == null) { return null; } StringBuilder buf = new StringBuilder(256); // Java default is 16, probably too small while (iterator.hasNext()) { Object obj = iterator.next(); if (obj != null) { buf.append(obj); } if (iterator.hasNext()) { buf.append(separator); } } return buf.toString(); } public static <T> List<T> asList(Iterator<? extends T> it) { List<T> lst = new ArrayList<T>(); while (it.hasNext()) { lst.add(it.next()); } return lst; } }