Variáveis
O que é uma variável?
Uma variável é o nome que Ruby associa a um objeto particular. Por exemplo:
city = "Toronto" |
Aqui, Ruby associou a string "Toronto" com o nome (variável) city.
Pense que Ruby fez duas tabelas. Uma com objetos e outra com os nomes deles. Então pense que Ruby desenhou uma seta de city para "Toronto".
Sempre que Ruby encontra city, ele vai seguir a seta e chegar até a string "Toronto".
|
Atenção: O nome de variáveis deve começar com uma letra minúscula.
|
Trabalhando com variáveis
Você pode manipular variáveis exatamente da mesma forma como você manipula os objetos que eles representam.
A melhor coisa das variáveis é que você pode
manipular inforação mais facilmente. Suponha que
você tenha recebido estas instruções:
1- Adicione 2, 4 , 6 e 8.
2-
Pegue o resultado, e divida por 5
3-
Pegue o produto de 2, 3 e 4.
4-
Pegue sua resposta da linha 2 e subtraia o que você obteve
da linha 3.
Certo, não tenha medo de escrever uma longa expressão para fazer isso. É muito fácil de escrever:
Atalhos
No exemplo acima, você viu as expressões:
num1 = num1 / 5 num2 = num2 - num1 |
Este grupo de expressões são muito comuns, então Ruby oferece alguns atalhos:
Exemplo |
Atalho |
Siginificado |
|---|---|---|
var = var + 2 |
var += 2 |
Adiciona 2 à var |
var = var - 3 |
var -= 3 |
Subtrai 3 de var |
var = var * 6 |
var *= 6 |
Multiplica var por 6 |
var = var / 2 |
var /= 2 |
Divide var por 2 |
var = var** 3 |
var **=3 |
Eleva var ao cubo |
var = var % 4 |
var %= 4 |
Resto (modulo) de var dividido por 4 |
Então o mesmo exemplo anterior pode ser escrito como
Constantes vs Variáveis
Constantes são como variáveis. Exceto que você avisa a Ruby que seu valor é supostamente fixo. Se você tentar mudar o valor de uma constante, Ruby vai emitir um aviso "warning".
Você define constantes da mesma forma como as variáveis, exceto a primeira letra no nome, que deve ser maiúscula.
|
Nota: Mesmo City sendo uma "constante",
seu valor será alterado. Ruby irá apresentar uma mensagem advertindo que você está mudando seu valor. Veja abaixo. |
Exercícios
1- Você acha que os atalhos funcionam para strings também? Tente isso:
var = "hello " var = var + "world" var += "world" |
2- O que você acha que isso vai fazer?
string = "hi"
string *= 3
|
Tente. Como você explicaria este resultado ao seu irmão mais novo?