Ruby Условные операторы
Ruby предоставляет несколько распространённых условных конструкций. Здесь мы объясним все условные операторы и модификаторы, доступные в Ruby.
Ruby if...elseОператор
Синтаксис
ifВыражение используется для условного выполнения. Значениеfalseиnilfalse — ложь, все остальные значения истинны. Обратите внимание, что Ruby использует elsif, а не else if или elif.
Еслиусловиеистинно, то выполнитькод. Еслиусловиене истинно, то выполнить указанное в ветви elseкод。
Обычно мы опускаем зарезервированное слово then. Если вы хотите записать полное выражение if в одну строку, вы должны отделить условие от программного блока с помощью then. Как показано ниже:
Пример
Попробуйте »
Приведённый выше пример выводит:
x 是 1
Ruby ifМодификатор
Синтаксис
Фраза с модификатором if означает, что выражение слева от if выполняется только тогда, когда условие справа от if истинно. То есть, еслиусловиеистинно, то выполнитькод。
Приведённый выше пример выводит:
debug
Ruby unlessОператор
Синтаксис
Выражение unless работает противоположно выражению if, то есть, еслиусловиеложно, то выполнитекод. Еслиусловиеистинно, то выполните указанный в ветви elseкод。
Пример
Попробуйте »
Приведённый выше пример выводит:
x 小于或等于 2
Ruby unlessМодификатор
Синтаксис
Еслиусловиеложно, то выполнитекод。
Пример
Попробуйте »
Приведённый выше пример выводит:
1 -- 这一行输出 3 -- 这一行输出
Ruby caseИнструкция
Синтаксис
case сначала выполняет сопоставлениевыражения, а затем выбирает ветвь на основе результата сопоставления.
Он использует===оператор для сравненияwhenс указаннымвыражением, и если они совпадают, то выполнитьwhenсодержимое этой части.
Обычно мы опускаем зарезервированное слово then. Если вы хотите написать полное выражение when в одной строке, вы должны отделить условие от программного блока с помощью then. Как показано ниже:
Следовательно:
В основном аналогично:
Пример
Попробуйте »
Приведённый выше пример выводит:
child
Когда часть "expression" в case опущена, вычисляется первая истинная часть условия when.