我有两个2D布尔数组。我可以将它们“添加”在一起而不会在它们上面循环吗?因此最终结果如下:两个数组中的错误单元格保持为false,而如果单元格在两个数组中的任何一个中包含true,则结果数组中的相应单元格为true。
所以例如......
true false
false false
已添加到...
false true
true false
会给出
true true
true false
答案 0 :(得分:3)
不,但您可以使用Java的BitSet
类来模拟2D布尔数组,然后使用or
方法组合两个这样的位集,这将实现您想要的效果。见这里:
为了使其适用于2D,您需要适当地映射索引,即使用传统的y * width + x
方法。
答案 1 :(得分:0)
您正在描述or
运算符和按位运算符(&
,|
,^
,&=
,|=
和{{1可以在Java中使用布尔类型:
^=