/** * Returns a TreeMap containing {@code n} values supplied by a given Supplier {@code s}. * * @param <K> The key type * @param <V> The value type * @param keyComparator The comparator used to sort the entries by their key * @param n The number of elements in the TreeMap * @param s The Supplier computing element values * @return A TreeMap of size {@code n}, where each element contains the result supplied by {@code * s}. * @throws NullPointerException if {@code keyComparator} or {@code s} are null */ @SuppressWarnings("unchecked") public static <K, V> TreeMap<K, V> fill( Comparator<? super K> keyComparator, int n, Supplier<? extends Tuple2<? extends K, ? extends V>> s) { Objects.requireNonNull(keyComparator, "keyComparator is null"); Objects.requireNonNull(s, "s is null"); return ofEntries(keyComparator, Collections.fill(n, (Supplier<? extends Tuple2<K, V>>) s)); }