你好假设我有一个hashmap
HashMap<Integer,boolean[][]> map= new HashMap();
如何在二维数组中的地图上放置true或false值
答案 0 :(得分:3)
HashMap<Integer, boolean[][]> map = new HashMap();
int rowNumber = 1;
boolean[][] array2D = map.get(rowNumber);
array2D[10][20] = true;
答案 1 :(得分:2)
//First get the boolean array if it exists.
boolean[][] value = map.get(key);
//If it doesn't exist in the map yet, instantiate it.
if(value == null){
value = new boolean[size1][size2];
map.put(key,value);
}
//Set the boolean value in the array at the correct location
value[index1][index2] = booleanValue;
根据需要填写键,booleanValue,大小和索引。
答案 2 :(得分:1)
如果我错了,请纠正我,但似乎你想在地图中直接放置布尔值。你设置它的方式,你的地图不是由布尔值组成,而是由布尔数组组成。
这就是为什么你不能只放map.put(key, true)
因为true
不属于boolean[][]
类型,它只是一个简单的香草布尔值。您可能会遇到某种类型的不匹配错误,因为除非您告诉计算机将布尔值放在数组中,否则boolean
不能神奇地成为数组。
如果您真的打算制作一个每个铲斗都装有2D阵列的地图,那么rfeak的答案将解决您的问题。
答案 3 :(得分:0)
你的意思是这样吗?
int index, row, col = ....
Boolean[][] array = map.get(index);
array[row][col] = true/false;