Here you can find the source of join(List> items, char separator)
public static String join(List<?> items, char separator)
//package com.java2s; /*//from w w w . j a v a 2 s.c om * Copyright 2008-2009 the original ???(zyc@hasor.net). * * Licensed 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.List; public class Main { /** * Creates a backslash escaped string, joining all the items. * @see #escapeTextWithSeparator */ public static String join(List<?> items, char separator) { StringBuilder sb = new StringBuilder(items.size() << 3); boolean first = true; for (Object o : items) { String item = o.toString(); if (first) { first = false; } else { sb.append(separator); } appendEscapedTextToBuilder(sb, item, separator); } return sb.toString(); } /** * writes chars from item to out, backslash escaping as needed based on separator -- * but does not append the seperator itself */ public static void appendEscapedTextToBuilder(StringBuilder out, String item, char separator) { for (int i = 0; i < item.length(); i++) { char ch = item.charAt(i); if (ch == '\\' || ch == separator) { out.append('\\'); } out.append(ch); } } }