初始化布尔数组[Java]

时间:2017-11-16 03:56:00

标签: java arrays

我有2个班级:

public class A {

    public int min, max;

    public A(int min_arg, int max_arg)
    {
        min = min_arg;
        max = max_arg;
    }

    public int getMin()
    {
        return this.min;
    }
    public int getMax()
    {
        return this.max;
    }
}

public class B
{
    private final boolean[] myBoolean;
    private final A testObject;

    public B(A testObject)
    {
        // I want to do something like this:
        for(int i = testObject.min(); i != testObject.max(); i++)
        {
            myBoolean[i] = false;
        }
    }
}

我想在类B中初始化数组“myBoolean”并将所有值设置为false。问题是,它不会让我这样做。 它说的是空白的最终字段“myBoolean”可能没有被初始化。 我已经看到有一个名为Arrays.fill的函数(array,true / false);但这对我也没有帮助。 有人知道用A类的min-> max来初始化Array myBoolean的方法吗? 我知道

private final boolean[] myBoolean;

没有大小,大小应该是A类对象的最小值 - >最大值。我找不到办法做到这一点。

2 个答案:

答案 0 :(得分:2)

您需要先初始化数组,

myBoolean = new boolean[size];

此外,默认情况下,布尔数组中的值设置为false。 See here

答案 1 :(得分:0)

您必须创建一个数组。您刚刚宣布了参考资料。

myBoolean = new boolean[100];

或某些值N代替100。