Как вы справляетесь с огромными if-условиями? - PullRequest
28 голосов
/ 08 августа 2008

Это то, что мешало мне на всех языках, которые я использовал, у меня есть оператор if, но в условной части так много проверок, что мне нужно разбить его на несколько строк, использовать вложенный оператор if или просто принять, что это уродливо и продолжай жить своей жизнью.

Существуют ли какие-либо другие методы, которые вы нашли, которые могли бы пригодиться мне и всем, кто сталкивался с той же проблемой?

Пример, все в одной строке:

if (var1 = true && var2 = true && var2 = true && var3 = true && var4 = true && var5 = true && var6 = true)
{

Пример, многострочный:

if (var1 = true && var2 = true && var2 = true
 && var3 = true && var4 = true && var5 = true
 && var6 = true)
{

Пример вложенный:

if (var1 = true && var2 = true && var2 = true && var3 = true)
{
     if (var4 = true && var5 = true && var6 = true)
     {

Ответы [ 21 ]

0 голосов
/ 08 августа 2008

Если вы программируете на Python, то это простое решение со встроенной функцией all(), примененной к списку ваших переменных (я просто буду использовать здесь логические литералы):

>>> L = [True, True, True, False, True]
>>> all(L) # True, only if all elements of L are True.
False
>>> any(L) # True, if any elements of L are True.
True

Есть ли в вашем языке соответствующая функция (C #? Java?). Если так, то это, вероятно, самый чистый подход.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...