我有一个极端基本的代码,如下所示:
boolean[][] nodes = new boolean[sectionCountX][sectionCountZ];
for(boolean[] n1 : nodes)
for(boolean n2 : n1) // complain about unused variable
n2 = true;
尽管事实上我将n2设置为真正的Eclipse给了我一个警告,告诉我n2从未使用过。
我知道我可以使用计数器循环,但我对此有所了解。
答案 0 :(得分:2)
您正尝试使用增强的for循环初始化数组,但这不起作用。
你在这里做的是创建一堆局部变量并初始化它们,它们什么都不做,因此Eclipse发出了警告。
我建议改为使用Arrays.fill()
:
boolean[][] nodes = new boolean[sectionCountX][sectionCountZ];
for (boolean[] n1 : nodes) {
Arrays.fill(n1, true);
}
答案 1 :(得分:0)
术语used
用于评估。你永远不会评估n2
。例如,你不做
System.out.println(n2);
它给你一个提示/警告因为n2
基本没用,所以为什么甚至浪费资源来声明它并分配它?
如果您尝试将nodes
数组中每个布尔值的值设置为true
,那么您所做的工作将无法正常工作。