Hi Mark, hi Stuart, hi all,

for Map, i think a version with a builder will be cool too,
something like:

  public interface EntryBuilder<K, V> {
    public EntryBuilder<K,V> entry(K key, V value);
  }

and by example for HashMap:

  public static <K, V> HashMap<K, V> fromBuilder(Consumer<? super 
EntryBuilder<K,V>> consumer) {
    HashMap<K,V> map = new HashMap<>();
    consumer.accept(new EntryBuilder<>() {
      public EntryBuilder<K,V> entry(K key, V value) {
        map.put(key, value);
        return this;
      }
    });
    return map;
  } 

  ...
  HashMap<String, Integer> map = HashMap.fromBuilder(b -> b
    .entry("foo", 1)
    .entry("bar", 2));

The builder pattern let us to avoid to create intermediary entry objects.

regards,
Rémi

----- Mail original -----
> De: "mark reinhold" <mark.reinh...@oracle.com>
> À: "stuart marks" <stuart.ma...@oracle.com>
> Cc: core-libs-dev@openjdk.java.net
> Envoyé: Jeudi 24 Septembre 2015 02:02:17
> Objet: JEP 269: Convenience Factory Methods for Collections
> 
> New JEP Candidate: http://openjdk.java.net/jeps/269
> 
> - Mark
> 

Reply via email to