I have a list as below
[url1,url2,url3,url4]
This list will be based on multiple selection from drop down list of HTML. So list size i.e., lis
You can use Java 8 utility class java.util.StringJoiner
.
This class specifically introduced to format list of string values.
For example:
StringJoiner joiner = new StringJoiner("','", "'", "'");
joiner.add("url1");
joiner.add("url2");
joiner.add("url3");
joiner.add("url4");
System.out.println(joiner);
Output
'url1','url2','url3','url4'
Note that, in constructor of StringJoiner
,
StringJoiner(CharSequence delimiter, CharSequence prefix, CharSequence suffix)
we are passing single quote as prefix and suffix to satisfy your specific requirement.
Most fast and efficient way to do this
Ex.
ArrayList<String> a=[url1,url2,url3,url4];
String s ="'"+a.toString().replace("[","").replace("]", "").replace(" ","").replace(",","','")+"'";
Have one Util.java file or if you already have all common util stuff then just add these static methods
for single quote
public static String singleQuote(String str) {
return (str != null ? "'" + str + "'" : null);
}
for double quotes
public static String doubleQuotes(String str) {
return (str != null ? "\"" + str + "\"" : null);
}
Using Java 8 Streams:
String[] array = {"url1", "url2", "url3", "url4"}
Stream.of(array).collect(Collectors.joining("','", "'", "'"));