如何在Java中将逻辑运算符应用于ArrayList的所有元素

时间:2019-02-11 22:56:42

标签: java arraylist

我需要将OR(逻辑)运算符应用于arraylist中的所有元素。问题是:List<boolean[]> arrayAllergeni = new ArrayList<>();

示例:

arrayAllergeni[0] = {false, true,  false, true,  false, true, ... }
arrayAllergeni[1] = {false, false, false, false, false, false, ... }

结果是:

result_allergeni[] = {false, true, false, true, false, true, ... }

以此填充ArrayList

List<boolean[]> arrayAllergeni = new ArrayList<>();
for (int i = 0; i < rct.getComposizione().size(); i++) {
    boolean[] allergeni = rct.getComposizione().get(i).getAllergeni();
    arrayAllergeni.add(allergeni);
}

,我想获取数组的总OR逻辑,结果将为boolean[] result_allergeni。那怎么办是否有一些特殊功能,或者我需要评估所有单个数组?

我的解决方案:

Boolean[] newallergeni = new Boolean[arrayAllergeni.size()];
Arrays.fill(newallergeni, Boolean.FALSE);
for (int k = 0; k < newallergeni.length; k++) {
    for (int i = 0; i < arrayAllergeni.size(); i++) {
        newallergeni[k] |= arrayAllergeni.get(i)[k];
    }
}

0 个答案:

没有答案