Java tutorial
//package com.java2s; /* * Copyright (c) 2012 M. M. Naseri <m.m.naseri@gmail.com> * * Permission is hereby granted, free of charge, to any person obtaining a copy of this * software and associated documentation files (the "Software"), to deal in the Software * without restriction, including without limitation the rights to use, copy, modify, * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to the following * conditions: * * The above copyright notice and this permission notice shall be included in all copies * or substantial portions of the Software. */ import java.util.*; import java.util.concurrent.CopyOnWriteArraySet; public class Main { /** * This method, as the name suggests, will take the union of all the input sets, * creating an output, thread-safe set. * @param collections input sets * @param <E> type of set items * @return a set that is the union of all input sets */ public static <E> Set<E> union(Collection<E>... collections) { final CopyOnWriteArraySet<E> result = new CopyOnWriteArraySet<E>(); for (Collection<E> collection : collections) { result.addAll(collection); } return result; } }