【发布时间】:2017-08-27 21:39:39
【问题描述】:
我试图在一个类中创建一个 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();
}
编译时出现两个问题:
- Board.java 使用未经检查或不安全的操作,使用 -Xlint:unchecked 重新编译。
- 当我使用“Xlint:unchecked”编译时,我得到了
警告:[unchecked] unchecked cast HashMap[] boardPop.......(与上面代码的第 1 行相同)
必需:HashMap[] 找到:HashMap[]
请帮帮我! :D
理想情况下,我不想在未选中的情况下使用 Xlint,但最终我真的只需要能够从列表中检索 HashMap 并将其分配给queenMap,这样我就可以在类中进行计算。
谢谢
【问题讨论】:
-
在声明
boardPopulation之前尝试@SuppressWarnings("unchecked") -
标记为重复。答案在这里:stackoverflow.com/a/14917529/2390219
标签: java arrays hashmap unchecked