Latest web development tutorials

rubi condicional

Ruby fornece várias construções condicionais comuns. Aqui vamos explicar todas as instruções condicionais e modificadores Rubi disponíveis.

Rubiif ... else

gramática

if conditional [then]
	  code...
[elsif conditional [then]
	  code...]...
[else
	  code...]
end

se aexpressão para a execução condicional. Valorfalseenilcomo falso, outros valores são verdadeiras. Por favor, note, Ruby usar ELSIF, em vez de usar else if e elif.

Se acondiçãofor verdadeira, então ocódigo.Se ocondicionalnão é verdadeira, outra cláusula especificada nocódigoé executado.

Nós geralmente omitir a palavra reservada seguida. Se você quer escrever completa se a fórmula em uma linha, então você deve ser separado por tipo e condições dos blocos de programa. Como se segue:

if a == 4 then a = 7 end

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

x=1
if x > 2
   puts "x 大于 2"
elsif x <= 2 and x!=0
   puts "x 是 1"
else
   puts "无法得知 x 的值"
end

Exemplos de saída acima:

x 是 1

Rubise modificadores

gramática

code if condition

se a frase significa que, quando modificados apenas se as condições relativas ao direito de estabelecimento, desde a execução de expressão esquerda. Isto é, secondicionalé verdadeira, então ocódigo.

Exemplos

#!/usr/bin/ruby

$debug=1
print "debug\n" if $debug

Exemplos de saída acima:

debug

Rubimenos que a instrução

gramática

unless conditional [then]
   code
[else
   code ]
end

a menos que a fórmula que contrasta de ação e se, isto é, se acondiçãofor falsa, então executarcódigo.Se acondiçãofor verdadeira, outra cláusula especificada nocódigoé executado.

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

x=1
unless x>2
   puts "x 小于 2"
 else
  puts "x 大于 2"
end

O exemplo acima saída é:

x 小于 2

Rubi,a menos modificadores

gramática

code unless conditional

Se acondiçãofor falsa, executarcódigo.

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

$var =  1
print "1 -- 这一行输出\n" if $var
print "2 -- 这一行不输出\n" unless $var

$var = false
print "3 -- 这一行输出\n" unless $var

Exemplos de saída acima:

1 -- 这一行输出
3 -- 这一行输出

exposição do casoRuby

gramática

case expression
[when expression [, expression ...] [then]
   code ]...
[else
   code ]
end

expressãocaso de um primeiro jogo juiz, em seguida, sucursal no resultado do jogo.

Ele utiliza o operador=== para comparar aexpressãoquandoespecificado,se consistentes, em seguida, a aplicação do conteúdo quandosecção.

Nós geralmente omitir a palavra reservada seguida. Se você quer escrever completa quando a fórmula em uma linha, então você deve ser separado por tipo e condições dos blocos de programa. Como se segue:

when a == 4 then a = 7 end

Portanto:

case expr0
when expr1, expr2
   stmt1
when expr3, expr4
   stmt2
else
   stmt3
end

Substancialmente semelhante:

_tmp = expr0
if expr1 === _tmp || expr2 === _tmp
   stmt1
elsif expr3 === _tmp || expr4 === _tmp
   stmt2
else
   stmt3
end

Exemplos

#!/usr/bin/ruby
# -*- coding: UTF-8 -*-

$age =  5
case $age
when 0 .. 2
    puts "婴儿"
when 3 .. 6
    puts "小孩"
when 7 .. 12
    puts "child"
when 13 .. 18
    puts "少年"
else
    puts "其他年龄段的"
end

O exemplo acima saída é:

小孩

Quando parte "expressão" do caso é omitido, a condição de cálculo quando uma parte da verdadeira expressão.

foo = false
bar = true
quu = false

case
when foo then puts 'foo is true'
when bar then puts 'bar is true'
when quu then puts 'quu is true'
end
# 显示 "bar is true"