在指定HashMap <string,integer =“”>的同时创建HashMaps数组

时间:2017-04-03 06:08:50

标签: java arrays hashmap unchecked

我试图在一个类中创建一个HashMaps数组,然后从数组中检索一个hashmap用于计算目的。这是我的代码:

HashMap<String, Integer>[] boardPopulation= (HashMap<String, Integer>[]) new HashMap[populationSize];
    for(int i=0; i < populationSize; i++){
        generateQueens();
        boardPopulation[i] = queenMap;
    }
    for(int i=0; i < populationSize; i++){
        queenMap = boardPopulation[i];
        printBoard();
    }

编译时我遇到两个问题:

  1. Board.java使用未经检查或不安全的操作,使用-Xlint重新编译:未选中。
  2. 当我使用&#34; Xlint编译时:未选中&#34;我
  3. 警告:[未选中]取消选中强制转换 HashMap [] boardPop .......(与上面代码的第1行相同)

    必需:HashMap [] 发现:HashMap []

    请帮帮我! :d

    理想情况下,我不想不使用Xlint,但最终我只需要能够从列表中检索HashMap并将其分配给queenMap,这样我就可以在类中进行计算。

    三江源

1 个答案:

答案 0 :(得分:1)

很抱歉回答一个稍微不同的问题,但如果数组不是必不可少的,您是否尝试使用通用列表:

List<Map<String, Integer>> boardPopulations = new ArrayList<>();
boardPopulations.add(new HashMap<>());