Как использовать несколько операторов AND? - PullRequest
0 голосов
/ 06 апреля 2020

У меня есть 6x List<int>: PL1, PL2, PL3, PL4, PL5 и PL6, и я хочу вызвать функцию, ЕСЛИ ВСЕ из этих списков не имеют число 6.

Пример:

Все списки, кроме PL4, имеют количество 6 -> Функция будет выполнена.

Все списки имеют количество 6 - > Функция не будет выполняться.

Я пытаюсь добиться этого с помощью:

if (PL6.Count != 6 && PL5.Count != 6 && PL4.Count != 6 && PL3.Count != 6 && PL2.Count != 6 && PL1.Count != 6)
{
     Function();
}

.., который не работает. Как мне заставить его работать? Я пытался &, &&, | и || в заявлении.

1 Ответ

1 голос
/ 06 апреля 2020

Звучит так, как будто вы пытаетесь запечатлеть «выполнить функцию, если в каком-либо из списков нет счетчика 6». Если это ваше намерение, то вам понадобится оператор ИЛИ (||):

if (PL6.Count != 6 || PL5.Count != 6 || PL4.Count != 6 || PL3.Count != 6 || PL2.Count != 6 || PL1.Count != 6)
{
     Function();
}

В качестве альтернативы вы можете написать это как:

if (!(PL6.Count == 6 && PL5.Count == 6 && PL4.Count == 6 && PL3.Count == 6 && PL2.Count == 6 && PL1.Count == 6))
{
     Function();
}
...