2015-05-29 3 views
0

Я новичок в быстрой и основанный на библиотеке ИОС разработчиков я нашел этот условный код заявление:Как правильно записать условное утверждение в swift?

if *condition 1* { 
    *statements to execute if condition 1 is true* 
} else if *condition 2* { 
    *statements to execute if condition 2 is true* 
} else { 
    *statements to execute if both conditions are false* 
} 

Но то, что я хочу что-то вроде этого:

if *condition 1* { 
    *statements to execute if condition 1 is true* 
} else { 
    *statements to execute if condition 1 is false* 
} 
if *condition 2* { 
    *statements to execute if condition 2 is true* 
} else { 
    *statements to execute if condition 2 is false* 
} 
if *condition 3* { 
    *statements to execute if condition 3 is true* 
} else { 
    *statements to execute if condition 3 is false* 
} 
if *condition 4* { 
    *statements to execute if condition 4 is true* 
} else { 
    *statements to execute if condition 4 is false* 
} 

Есть ли решение, чтобы сделать это правильно , Извините, если мой вопрос звучит глупо?

+4

Ваш второй блок кода должен работать именно так, как вы написали, где проблема ? –

ответ

0

Update

Я принимаю мое предложение обратно. Я неправильно понял вопрос. Не видел, что для каждого условия было другое утверждение. Виноват.

Оригинал ответа

Это зависит от состояния сложности, но, как правило, вы можете использовать switch заявление для проверки нескольких условий.

От компании Apple docs:

Swift предоставляет два способа добавления условных ветвлений в код, известного как если утверждение заявления и переключателя. Как правило, вы используете оператор if для оценки простых условий с несколькими возможными исходами только . Оператор switch лучше подходит для более сложных условий с несколькими возможными перестановками и полезен в ситуациях, когда соответствие шаблону может помочь выбрать подходящую ветвь кода .

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

В своей простейшей форме, переключатель оператор сравнивает значение от одного или более значений одного и того же типа:

switch some value to consider { 
case value1: 
    //respond to value 1 
case value2, 
value3: 
    //respond to value 2 or 3 
default: 
    //otherwise, do something else 
} 
+1

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

+0

@nhgrif вопрос об общем «условии». Вот почему я сказал, что это зависит от самого состояния. Нет универсального хорошего пути. Но я уверен, что оператор switch предназначен для работы с несколькими условиями, поскольку гораздо проще читать альтернативу множественному else if. – NKorotkov

+0

@nhgrif только что понял, что я неправильно понял вопрос. Я извиняюсь. – NKorotkov

Смежные вопросы