我在公共类中为Hashmap创建工厂方法。

 public class MyList {
    Hashmap list = newMap();   //is this function called properly here?

public static final Hashmap newMap() {
    return Hashmap(String, boolean);

  }
 }


以最简单的方式,如果要为键/值对保留字符串和布尔值,如何设置工厂方法?

我被语法所困扰。

我只想返回一个新的Hashmap对象,并使用newMap()作为工厂方法

最佳答案

HashMap具有用于键和值的通用类型,因此您需要将这些类型指定为

public static HashMap<String, Boolean> newMap() {
    // ...
}

在里面,您将创建地图为


return new HashMap<String, Boolean>();
或使用菱形运算符作为return new HashMap<>();(因为签名中已包含类型)

您也可以将类型作为参数传递

public static <K, V> HashMap<K, V> newMap(Class<K> classKey, Class<V> classValue) {
    return new HashMap<>();
}





采用

public static void main(String[] args) {
    Map<String, Boolean> map = newMap();
    Map<Integer, Double> mapID = newMap(Integer.class, Double.class);
}

关于java - 如何在工厂方法中为Hashmap <String Boolean>创建构造函数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53856767/

10-12 00:38
查看更多