用Java初始化Map,Hashmap

时间:2016-04-30 06:05:32

标签: dictionary collections hashmap initialization

如何在Java中初始化静态地图?

方法一:从Hashmap创建一个Class扩展,如下所示

这是一个说明我使用CustomMap的方式的例子:

1 个答案:

答案 0 :(得分:0)

public class CustomMap < K, V > extends java.util.HashMap < K, V > {

  public CustomMap(Object[]...objs) {
    super();
    this.of(objs);
  }

  public java.util.Map < K, V > of(Object[]...objs) {
    for (Object[] o: objs) {
      this.of((K) o[0], (V) o[1]);
    }
    return this;
  }

  public java.util.Map < K, V > of(K k, V v) {
    this.put(k, v);
    return this;
  }

  public static Object[] tuple(Object k, Object v) {
    return new Object[] {
      k, v
    };
  }

  //USAGE
  public static void main(String...args) {
    //import static CustomMap.tuple;
    java.util.Map < String, String > cmap = new CustomMap < > (CustomMap.tuple("One", "Two"));
  }
}