Você está aqui: Ruby ::: Fundamentos da Linguagem ::: Estruturas de Controle

Usando a instrução next para abandonar a iteração atual de um laço e saltar para a seguinte

Quantidade de visualizações: 6229 vezes
# Este exemplo mostra como usar a instrução
# next para abandonar a iteração atual de um
# laço e saltar para a seguinte

# Neste exemplo nós imprimimos os números
# pares de 1 à 10

for valor in (1..10)
  # Salta a iteração atual se o valor da variável
  # de controle não for par
  next if (valor % 2) != 0
  
  puts valor
end


Link para compartilhar na Internet ou com seus amigos:

Ruby ::: Dicas & Truques ::: Programação Orientada a Objetos

Como acessar variáveis de instâncias para escrita em Ruby sem a necessidade de métodos mutatórios usando a função attr_accessor

Quantidade de visualizações: 7157 vezes
Por padrão, variáveis de instância em Ruby só podem ser acessadas para escrita usando métodos mutatórios, ou seja, uma variável de instância @nome deve ser modificada usando um método definir_nome.

É possível dispensar o uso de métodos mutatórios empregando o método attr_accessor nos nomes das variáveis que poderão ser acessadas e modificadas. Lembre-se que, ao contrário de attr_reader, o método attr_accessor possibilita o acesso à variável de instância tanto para leitura quanto para escrita.

Veja um exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# Definição da classe Cliente
class Cliente
   attr_accessor :nome, :idade
   
   def initialize(nome, idade)
      @nome = nome
      @idade = idade
   end
end

# Cria uma instância da classe Cliente e inicializa as
# variáveis de instância @nome e @idade
cliente = Cliente.new("Osmar J. Silva", 35)

# Acessa as variáveis de instância sem a necessidade
# de métodos acessórios
puts cliente.nome
puts cliente.idade

# Modifica as variáveis de instância sem a necessidade
# de métodos mutatórios
cliente.nome = "Carlos da Silva"
cliente.idade = 56

# Obtém os resultados
puts cliente.nome
puts cliente.idade

Se tentarmos acessar e modificar as variáveis nome e idade diretamente, sem os métodos mutatórios e a função attr_accessor nós teremos um erro do tipo:

Traceback (most recent call last):
estudos.arb:15:in `<main>': undefined method `nome' for #<Cliente:0x0000029a7211f080 @nome="Osmar J. Silva", @idade=35> (NoMethodError)


Ruby ::: Dicas & Truques ::: Strings e Caracteres

Como testar se uma string começa com uma determinada substring em Ruby usando uma função personalizada

Quantidade de visualizações: 7514 vezes
O Ruby, até a versão 1.8.6, não dispõe de um método para verificar se uma string começa com uma determinada substring. Assim, veja abaixo como escrever uma função starts_with(). Esta função recebe a string e a substring e retorna true se a string começar com a substring.

Eis a listagem completa:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# método auxiliar que permite verificar se
# uma string começa com uma substring
def starts_with(string, substring)
  if string.index(substring) == 0   
    return true
  else
    return false
  end
end

# declara e inicializa uma variável string
frase = "Gosto muito de Ruby"

# vamos verificar a string começa com "Gosto"
if starts_with(frase, "Gosto")
  puts "A string começa com \"Gosto\""
else
  puts "A string NÃO começa com \"Gosto\""
end

Ao executar este código Ruby nós teremos o seguinte resultado:

A string começa com "Gosto"


Ruby ::: Dicas & Truques ::: Programação Orientada a Objetos

Como usar métodos e variáveis de classes em Ruby - Programação Orientada a Objetos em Ruby

Quantidade de visualizações: 7969 vezes
Variáveis e métodos de classe, ao contrário de variáveis e métodos de instâncias, pertencem às classes e não às suas instâncias. Desta forma, uma variável ou método de classe é compartilhado por todos os objetos criados a partir de tal classe.

Para que você entenda melhor, o exemplo abaixo mostra uma classe que contém uma variável e um método de classe. Execute o código e veja como o valor de @@quant_clientes é incrementado todas as vezes que um novo objeto da classe Cliente é criado:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# vamos criar a classe Cliente
class Cliente
  # variável de classe
  @@quant_clientes = 0;  
 
  def initialize
    @@quant_clientes = @@quant_clientes + 1
  end

  # método de classe
  def Cliente.obter_quant_clientes
    @@quant_clientes
  end
end

# vamos criar três objetos da classe Cliente
cliente1 = Cliente.new
cliente2 = Cliente.new
cliente3 = Cliente.new

# vamos obter a quantidade de clientes criados
quant = Cliente.obter_quant_clientes

# exibe o resultado
puts "Há " + quant.to_s + " clientes criados"

Ao executar este código Ruby nós teremos o seguinte resultado:

Há 3 clientes criados


Desafios, Exercícios e Algoritmos Resolvidos de Ruby

Veja mais Dicas e truques de Ruby

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 65 usuários muito felizes estudando em nosso site.