public static <E> ConcurrentHashMultiset<E> create(Iterable<? extends E> elements) {
    ConcurrentHashMultiset<E> multiset = ConcurrentHashMultiset.create();
    Iterables.addAll(multiset, elements);
    return multiset;
  }
public static <E> ConcurrentHashMultiset<E> create(Iterable<? extends E> elements) {
    ConcurrentHashMultiset<E> multiset = ConcurrentHashMultiset.create();
    Iterables.addAll(multiset, elements);
    return multiset;
  }
public static < E > ConcurrentHashMultiset < E > create ( Iterable < ? extends E > elements ) { ConcurrentHashMultiset < E > multiset = ConcurrentHashMultiset . create ( ) ; Iterables . addAll ( multiset , elements ) ; return multiset ; }
Creates a new {@code ConcurrentHashMultiset} containing the specified elements, using the
default initial capacity, load factor, and concurrency settings.

<p>This implementation is highly efficient when {@code elements} is itself a {@link Multiset}.

@param elements the elements that the multiset should contain
Creates a new { @code ConcurrentHashMultiset } containing the specified elements using the default initial capacity load factor and concurrency settings .