关于Map的操作

64 阅读1分钟

实际开发中经常用到Map对象存储数据,每次创建对象以及赋值都比较麻烦,所以编写了此类。

 

import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;

/**
 * 快速构造一个Map对象并填充对象,仅支持 HashMap、LinkedHashMap
 * 
 * @param <K>
 * @param <V>
 * @author Xd
 */
public class XMap<K, V> {
  private Map<K, V> data;

  public XMap() {
    this.data = new HashMap<>();
  }

  public XMap(boolean ordered) {
    if (ordered) {
      this.data = new LinkedHashMap<>();
    } else {
      this.data = new HashMap<>();
    }
  }

  public XMap<K, V> add(K k, V v) {
    this.data.put(k, v);
    return this;
  }

  public Map<K, V> build() {
    return this.data;
  }
}

如何使用

public static void main(String[] args) {
  // 定义一个HashMap
  Map<String,String> hashMap = new XMap<String,String>().add("name","Xd").add("code", "9527").build();
  System.out.println(hashMap.toString()); // 输出结果 {code=9527, name=Xd}
  // 定义一个LinkedHashMap
  Map<String,String> linkedHashMap = new XMap<String,String>(true).add("name","Xd").add("code", "9527").build();
  System.out.println(linkedHashMap.toString()); // 输出结果 {name=Xd, code=9527}
}