How to merge elements of a collection separated by a delimiter in Java

2 Answers

0 votes
import java.util.Collection;
import java.util.Iterator;
import java.util.Arrays;

public class MyClass {
    public static<T> String MergeCollection(Collection<T> collection, String delimiter) {
        if (collection == null || collection.isEmpty()) {
            return "";
        }
 
        Iterator<T> it = collection.iterator();
        StringBuilder sb = new StringBuilder(it.next().toString());
 
        while (it.hasNext()) {
            sb.append(delimiter );
            sb.append(it.next());
        }
 
        return sb.toString();
    }
 
    public static void main(String args[]) {
        Collection<String> co = Arrays.asList("java", "c", "c++", "python");
 
        String merge = MergeCollection(co, ",");
        
        System.out.println(merge);
    }
}




/*
run:

java,c,c++,python

*/

 



answered Mar 12, 2023 by avibootz
0 votes
import java.util.StringJoiner;
import java.util.Collection;
import java.util.Arrays;

public class MyClass {
    public static<T> String MergeCollection(Collection<T> collection, String delimiter) {
        if (collection == null || collection.isEmpty()) {
            return "";
        }
  
        StringJoiner sj = new StringJoiner(delimiter);
 
        for (T element: collection) {
            sj.add(element.toString());
        }
 
        return sj.toString();
    }
  
    public static void main(String args[]) {
        Collection<String> co = Arrays.asList("java", "c", "c++", "python");
  
        String merge = MergeCollection(co, ",");
         
        System.out.println(merge);
    }
}
 
 
 
 
/*
run:
 
java,c,c++,python
 
*/

 



answered Mar 13, 2023 by avibootz
...