Latest web development tutorials

método de rubi

Método Ruby é semelhante a outras funções da linguagem de programação. método de rubi para agrupar uma ou mais declarações duplicadas em uma unidade.

O nome do método deve começar com uma letra minúscula. Se você estiver em letras maiúsculas como o início do nome do método, Ruby provavelmente vai usá-lo como uma constante, resultando em incorretamente analisar chamar.

Antes de chamar o método deve ser definido de outra forma, Ruby vai produzir exceção chamada de método indefinido.

gramática

def method_name [( [arg [= default]]...[, * arg [, &expr ]])]
   expr..
end

Assim, você pode definir um método simples, como segue:

def method_name 
   expr..
end

É possível definir um método para aceitar parâmetros, como segue:

def method_name (var1, var2)
   expr..
end

Você pode definir o valor padrão para um parâmetro, o parâmetro não é necessário para passar o valor padrão se a chamada de método:

def method_name (var1=value1, var2=value2)
   expr..
end

Quando você quiser chamar um método, basta usar o nome do método, como mostrado abaixo:

method_name

No entanto, quando você chamar um método com parâmetros, os parâmetros que você tem que tomar quando se escreve o nome do método, por exemplo:

method_name 25, 30

O método de usar os parâmetros maior desvantagem é a necessidade de lembrar o número de parâmetros ao chamar o método. Por exemplo, se você é o único que aceita método de três parâmetros passando apenas dois argumentos, Ruby irá exibir um erro.

Exemplos

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

def test(a1="Ruby", a2="Perl")
   puts "编程语言为 #{a1}"
   puts "编程语言为 #{a2}"
end
test "C", "C++"
test

Execute o exemplo acima saída é:

编程语言为 C
编程语言为 C++
编程语言为 Ruby
编程语言为 Perl

O valor de retorno de um método

Rubi cada método retorna um valor padrão. Este valor é o valor retornado pela última declaração. Por exemplo:

def test
   i = 100
   j = 10
   k = 0
end

Ao chamar esse método irá retornar uma declaração final da variável k.

instrução de retornodo rubi

Ruby in a instrução deretornoé usado para retornar um ou mais valores a partir de um método Ruby.

gramática

return [expr[`,' expr...]]

Se mais de duas expressões são dadas um array contendo estes valores será o valor de retorno. Se nenhuma expressão é dada, nulo será o valor de retorno.

Exemplos

return

或

return 12

或

return 1,2,3

Considere os seguintes exemplos:

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

def test
   i = 100
   j = 200
   k = 300
return i, j, k
end
var = test
puts var

Execute o exemplo acima saída é:

100
200
300

número variável de argumentos

Vamos dizer que você declarar um método que leva dois argumentos, quando você chamar esse método, você também precisa passar por dois parâmetros.

No entanto, Ruby permite que você declare um número variável de parâmetros. Vamos olhar para os exemplos a seguir:

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

def sample (*test)
   puts "参数个数为 #{test.length}"
   for i in 0...test.length
      puts "参数值为 #{test[i]}"
   end
end
sample "Zara", "6", "F"
sample "Mac", "36", "M", "MCA"

Neste código, você declarou um método de amostra, aceita um teste de parâmetro. No entanto, este parâmetro é um parâmetro variável. Isto implica que os parâmetros podem ser fornecidos com um número diferente de variáveis. Execute o exemplo acima saída é:

参数个数为 3
参数值为 Zara
参数值为 6
参数值为 F
参数个数为 4
参数值为 Mac
参数值为 36
参数值为 M
参数值为 MCA

métodos de classe

Quando o externo, o método método definido no padrão classe marcada comoprivada.Por outro lado, se o método definido na classe, o padrão é marcado como público.

O método padrão de visibilidade e marcaprivadapode ser alterado através do módulo (Module) empúblicoouprivado.

Quando você quiser acessar o método de classe, você primeiro precisa instanciar a classe. Em seguida, usando o objeto, você pode acessar qualquer membro da classe.

Rubi fornece uma maneira de acessar, sem métodos de instanciação. Vamos ver como declarar e acessar o método de classe:

class Accounts
   def reading_charge
   end
   def Accounts.return_date
   end
end

Nós já sabemos como a declaração método RETURN_DATE. É depois do nome da classe seguido por um ponto, seguido pelo nome do método depois do ponto da declaração. Você pode acessar diretamente o método de classe da seguinte forma:

Accounts.return_date

Para aceder a este método, você não precisa criar um contas a classe de objeto.

declaração de aliasRubi

Esta afirmação é usada como um método ou variáveis ​​globais de aliases. Aliases não pode ser definida dentro do corpo do método. Mesmo que o método é substituído, o método aliás também mantém a actual definição do método.

é proibida número de variáveis ​​globais ($ 1, $ 2, ...) a partir do alias. Reescrever o built-in variáveis ​​globais pode causar sérios problemas.

gramática

alias 方法名 方法名
alias 全局变量 全局变量

Exemplos

alias foo bar
alias $MATCH $&

Aqui, nós definimos um alias para foo para bar, para definir um alias para $ & $ PARTIDA.

declaraçãode Rubyundef

Esta afirmação é usada para cancelar a definição do método.undefnão pode aparecer dentro de um corpo de método.

Usandoundefealias,o interface de classe podem ser modificados independentemente da classe pai, mas por favor, note que quando o seu próprio método interno exige, pode prejudicar o programa.

gramática

undef 方法名

Exemplos

Os exemplos a seguir são cancelados chamado definição de métodobar:

undef bar