Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在多维数组中切换布尔值_Java_Arrays_If Statement_Boolean - Fatal编程技术网

Java 在多维数组中切换布尔值

Java 在多维数组中切换布尔值,java,arrays,if-statement,boolean,Java,Arrays,If Statement,Boolean,我试图让这个方法能够在我的二维布尔数组的false和true之间切换。数组中的每个值都对应于一个正方形,但是每当在窗口中推送带有坐标行和坐标列的某个正方形时,我需要在两者之间切换。然而,它给了我一个无效运算符==的错误,所以我不确定如何处理这个问题。任何帮助都将不胜感激 public void clickSquare( int row, int column ) { if (grid[row][column] == false)

我试图让这个方法能够在我的二维布尔数组的false和true之间切换。数组中的每个值都对应于一个正方形,但是每当在窗口中推送带有坐标行和坐标列的某个正方形时,我需要在两者之间切换。然而,它给了我一个无效运算符==的错误,所以我不确定如何处理这个问题。任何帮助都将不胜感激

public void clickSquare( int row, int column ) 
        {

             if (grid[row][column] == false)
             {
                 grid[row][column] == true;  
             }
             else
             {
                 grid[row][column] == false; 
             }
            return;  
        } 
要检查两个值是否相等,请使用
==

要为变量(或数组元素)赋值,请使用
=

grid[row][column] == false; 
应该是

grid[row][column] = false; 
对于
true
,情况也是如此

另外(但这与您的问题无关),请注意,您的整个方法可以替换为

    public void clickSquare( int row, int column ) 
    {
         grid[row][column] = !grid[row][column];
    } 

grid[row][column]
是一个
boolean
值,因此在
if
条件内,您只需测试
grid[row][column]
就可以知道它的
true
还是
false

if
块中,要分配值,必须使用
=
运算符

为了说明这一点,您可以这样使用代码:

public void clickSquare( int row, int column ) 
        {

             if (!grid[row][column])
             {
                 grid[row][column] = true;  
             }
             else
             {
                 grid[row][column] = false; 
             }
            return;  
        } 

如果要切换所有值,可以使用Arrays.setAll()吗?我尝试了
Arrays.setAll(boolArray,I->!I)Arrays.setAll(boolArray,i->false)确实有效。