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

时间:2011-11-04 14:34:17

标签: java

我有一个如下所示的数组。

基本上在这个数组中,有时bag数据[i] .getSecurityType()可能包含也可能不包含数组中的值。

 for (int i = 0; i <bagdata.length; i++) {
                if (bagdata[i].getSecurityType() != null) {
                    flag = true;
                } else {
                    flag = false;
                }

            }

我认为我的代码覆盖了标志值。我怎么处理这个?

4 个答案:

答案 0 :(得分:4)

根据您要标记的内容,尝试:

boolean flag = true;

for (int i = 0; i <bagdata.length; i++) {
    flag &= bagdata[i].getSecurityType() != null;
}

答案 1 :(得分:2)

如果需要,请在设置标志后立即使用break;。如果你想要对每个值标记,请创建一个标志数组。

答案 2 :(得分:1)

如果你想将flag设置为true,如果至少有一个containsdata你应该在循环之前将标志设置为false并删除其他部分,如下所示:

        flag=false;
          for (int i = 0; i <bagdata.length; i++) {
            if (bagdata[i].getSecurityType() != null) {
                flag = true;
            }
        }

但是如果你想记住数组中每个元素的标志,你应该创建一个标志数组......

答案 3 :(得分:1)

如果要将标志值设置为true,则使用 break 语句退出循环。