Java:如何在数组循环中设置标志值

时间:2011-11-05 10:03:45

标签: java

这是我的下面的验证方法。

public boolean validateData(Bagform[] bagdata) {
    boolean flag = false;
    int length = bagdata.length;

    if (length == 2) {
        for (int i = 0; i < bagdata.length; i++) {
            if (bagdata[i].getCallType() == null) {
                flag = true;
            }
        }
    }
    else {
        flag = true;
    }
    return flag;
}

基本上我在检查如果getCallType()对于数组中的任何值都不为null。

如果它不为null,那么它是一个有效数据,所以我将标志设置为true。 (请参阅上面的代码)

但是对我来说,我的标志值仍然是假的(即使getCallype()不为null)

请帮帮我。

1 个答案:

答案 0 :(得分:4)

如果调用类型 为null,则将标志设置为true。我怀疑你想要:

public boolean validateData(Bagform[] bagdata) {
    boolean flag = true;
    int length = bagdata.length;

    if (length == 2) {
        for (int i = 0; i < bagdata.length; i++) {
            if (bagdata[i].getCallType() == null) {
                flag = false;
            }
        }
    }
    return flag;
}

目前还不清楚为什么在数组中只有两个条目时才执行此验证。除非那是故意的,否则我已经写了这个:

public boolean validateData(Bagform[] bagdata) {
    for (Bagform form : bagdata) {
        if (form.getCallType() == null) {
            return false;
        }
    }
    return true;
}