Convert Java List to Delimited String

In this post, I explained how to take a Python list and convert it to a delimited string. It’s a little trickier to do this in Java but not too bad. Below is some code for doing this with either an ArrayList or an array.

Here are the methods:

import java.util.*;
 
...
 
public static String Join(String[] s, String delimiter)
{
    return Join(Lists.CreateStringList(s), delimiter);
}
 
public static String Join(ArrayList<String> coll, String delimiter)
{
    if (coll.isEmpty())
	return "";
 
    StringBuilder sb = new StringBuilder();
 
    for (String x : coll)
	sb.append(x + delimiter);
 
    sb.delete(sb.length()-delimiter.length(), sb.length());
 
    return sb.toString();
}

You could call it this way:

String[] array = new String[] {"abc", "def", "ghi"};
System.out.println(Join(array, ",")); //abc,def,ghi

Or this way:

ArrayList<String> list = new ArrayList<String>();
list.add("abc");
list.add("def");
list.add("ghi");
System.out.println(Join(list, ","));

Leave a Reply