Idiom #362 Create delimited list
From list a, create the text s specifying the contents of a, such that items are separated by delimiter d and items containg 1 or more spaces are quoted with quote character q.
Example: "A "," B"," C ",D,E,F
import static java.lang.String.join;
import static java.lang.String.valueOf;
import java.util.ArrayList;
import java.util.List;
class X extends ArrayList<String> {
char d, q;
X(char d, char q) {
this.d = d;
this.q = q;
}
@Override
public boolean add(String s) {
if (s.contains(" ")) s = q + s + q;
return super.add(s);
}
@Override
public String toString() {
return join(valueOf(d), this);
}
}
X x = new X(d, q);
a.forEach(x::add);
String s = x.toString();