Мне нужно применить оператор &&
(логический и) ко всем элементам в списке. Проблема заключается в следующем: в моем текущем решении мне нужно инициализировать переменную rowResult
, и я думаю, что результат может стать недействительным из-за переменной, имеющей начальное значение.Как применить логический оператор ко всем элементам в Java
ArrayList<Boolean> results = new ArrayList<>();
for (i = 1; i < results.size(); i++) {
rowResult = rowResult && results.get(i);
}
Ну, похоже, вы должны инициализировать его до «истины» перед циклом - в этом случае он будет оставаться истинным, если в списке нет никаких «ложных» значений. Это то, что вы хотите? Есть ли причина, по которой вы игнорируете первый элемент списка btw? (Я также предлагаю использовать расширенный цикл for ...) О, и вы можете оптимизировать это, остановив, как только вы нажмете значение «false». –
"then rowResult может стать неправильным" << почему? Нейтральное значение для операции И является 'true' (' x AND true' никогда не меняет 'x'), поэтому инициализация его' true' должна делать трюк просто отлично. – CherryDT
Thx вы, ребята @JonSkeet и @CherryDT, вот что я думаю об этом: if 'rowResult' - true, то в случае, если «results» имеет 3x «FALSE», «rowResult» будет «TRUE». И это неверно. Мне нужно FALSE || ЛОЖЬ || FALSE == FALSE' –