📜  Java |运营商|问题9

📅  最后修改于: 2021-07-02 17:46:55             🧑  作者: Mango

预测以下程序的输出。

class Test
{
    boolean[] array = new boolean[3];
    int count = 0;
  
    void set(boolean[] arr, int x)
    {
        arr[x] = true;
        count++;
    }
  
    void func()
    {
        if(array[0] && array[++count - 2] | array [count - 1])
            count++;
  
        System.out.println("count = " + count);
    }
  
  
    public static void main(String[] args)
    {
        Test object = new Test();
        object.set(object.array, 0);
        object.set(object.array, 1);
        object.func();
    }
}
  

(A) 2
(B) 3
(C) 4答案: (C)
解释:
第一次调用函数set(),设置array [0] = true,array [1] = false和array [2] = false。
第二次调用函数set(),设置array [0] = true,array [1] = true和array [2] = false。
在func()函数,if语句的计算结果为true。因此,计数= 4。这个问题的测验
如果您在以上帖子中发现任何错误,请在下面发表评论