Cobra/Keywords/if
Внешний вид
< Cobra
If
[править]if оператор используется для выполнения кода в случае удовлетворению условию.
Синтаксис
[править]
if-statement =
if <expression>
<statements>
(else if <expression>
<statements>)*
[else
<statements>]
if(<condition>, <texpr>, <fexpr>)
Если condition истинно, то то вычисляется значение выражения texpr, в противном случае значение выражения fexpr.
Выражения texpr и fexpr не обязаны быть одного типа.
Заметим, что вместо if выражений для проверки на nil, лучше использовать оператор coalesce.
Пример
[править]“if-блок” выражений выполняется если условие истинно, иначе выполняется другой “else-блок”. Может выполняться только один блок выражений. “else-блок” является не обязательным.
Допустимо использовать оператор if внутри другого оператора условия и так далее.
# Example 1
if name
print 'Hello, [name].'
# Example 2
if name
print 'Hello, [name].'
else
print "I don't know your name."
# Example 3
if x < y
print 'x is smaller'
else if x > y
print 'x is larger'
else
print 'x and y are the same'
# Example 1
print if(x>y, x, y)
# Example 2
print if(value, 'yes', 'no') # type is String
# Example 3
total += if(direction==DirectionEnum.Long, +1, -1) * amount
# Example 4
foo = if(condition, 'x', nil) # type is String?
# Example 5
foo = if(condition, 'x', 5) # type is Object