Interpretador Ruby Online - Execute e Teste Código Ruby Instantaneamente

Escreva, execute e teste código Ruby instantaneamente com nosso Interpretador Ruby Online gratuito. Sem necessidade de downloads ou instalações — basta abrir seu navegador e começar a programar em Ruby.

💡 Guia Básico de Ruby para Iniciantes

1. Declarando Variáveis e Constantes

Ruby é tipado dinamicamente. Constantes começam com letras maiúsculas e não devem mudar.

x = 10
pi = 3.14
name = "Alice"
is_active = true

MAX_USERS = 100
APP_NAME = "CodeUtility"

2. Condicionais (if / case)

Use if, elsif, else, ou case para controle de fluxo.

x = 2
if x == 1
  puts "Um"
elsif x == 2
  puts "Dois"
else
  puts "Outro"
end

case x
when 1
  puts "Um"
when 2
  puts "Dois"
else
  puts "Outro"
end

3. Laços

Use while, until, ou iteradores como each.

i = 0
while i < 3
  puts i
  i += 1
end

[1, 2, 3].each do |n|
  puts n
end

4. Arrays

Arrays armazenam listas ordenadas de elementos. Acesse usando índices.

fruits = ["apple", "banana", "cherry"]
puts fruits[0]
puts fruits.length

5. Manipulação de Arrays

Use push, pop, slice, e reverse para trabalhar com arrays.

fruits.push("kiwi")
fruits.pop
puts fruits[1..2]
puts fruits.reverse

# Compreensão de array
squares = (1..5).map { |x| x * x }
puts squares

6. Entrada/Saída de Console

Use gets.chomp para ler entrada e puts/print para saída.

print "Digite seu nome: "
name = gets.chomp
puts "Olá, #{name}"

7. Funções

Defina funções usando def. Você pode passar argumentos e retornar valores.

def greet(name)
  "Olá, #{name}"
end

puts greet("Alice")

8. Hashes

Hashes são pares chave-valor, como dicionários ou mapas.

person = { "name" => "Bob", "age" => 25 }
puts person["name"]

# Chaves como símbolos
person = { name: "Alice", age: 30 }
puts person[:name]

9. Tratamento de Exceções

Use begin-rescue-end para capturar exceções e lidar com erros de forma elegante.

begin
  raise "Algo deu errado"
rescue => e
  puts e.message
end

10. Entrada/Saída de Arquivo

Leia e escreva arquivos usando métodos File ou classes IO.

File.write("file.txt", "Hello File")
content = File.read("file.txt")
puts content

11. Manipulação de Strings

Strings em Ruby suportam muitos métodos: length, gsub, split, etc.

text = " Hello World "
puts text.strip
puts text.upcase
puts text.gsub("Hello", "Hi")
puts text.split

12. Classes & Objetos

Ruby é totalmente orientado a objetos. Use initialize para definir construtores.

class Person
  def initialize(name)
    @name = name
  end

  def greet
    "Oi, eu sou #{@name}"
  end
end

p = Person.new("Alice")
puts p.greet

13. Referências (Mutação de Objetos)

Todas as variáveis mantêm referências a objetos. Modificar um objeto dentro de uma função afeta o original.

def modify(arr)
  arr << "changed"
end

data = ["original"]
modify(data)
puts data.inspect  # ["original", "changed"]