O que um array faz ?

Isso tudo é muito bom, mas posso fazer alguma coisa legal com array? pode ter certeza.

Array#sort

Você pode classificar arrays com o método Array#sort.


>> primes = [ 11, 5, 7, 2, 13, 3 ]
=> [11, 5, 7, 2, 13, 3]
>> primes.sort 
=> [2, 3, 5, 7, 11, 13]
>> 
?> names = [ "Melissa", "Daniel", "Samantha", "Jeffrey"]  
=> ["Melissa", "Daniel", "Samantha", "Jeffrey"]
>> names.sort
=> ["Daniel", "Jeffrey", "Melissa", "Samantha"]
                       

Array#reverse

Você pode inverter os itens dos array :


>> names
=> ["Melissa", "Daniel", "Samantha", "Jeffrey"]
>> names.reverse 
=> ["Jeffrey", "Samantha", "Daniel", "Melissa"]
                       

Array#length

Você pode obter o tamanho do array :


>> names.length 
=> 4
                       

Aritmética do Array

Os métodos Array#+, Array#-, e Array#* trabalham da maneira que você imagina. Não existe Array#/ (como você divide um array?)


>> names = [ "Melissa", "Daniel", "Jeff" ]
=> ["Melissa", "Daniel", "Jeff"]
>> names + [ "Joel" ] 
=> ["Melissa", "Daniel", "Jeff", "Joel"]
>> names - [ "Daniel" ]
=> ["Melissa", "Jeff"]
>> names * 2
=> ["Melissa", "Daniel", "Jeff", "Melissa", "Daniel", "Jeff"]
                       

Naturalmente, nossos amigos +=, -= e *= ainda estão conosco.

Imprimindo arrays

Finalmente, você pode imprimir arrays na tela.


>> names
=> ["Melissa", "Daniel", "Jeff"]
>> puts names 
Melissa
Daniel
Jeff
=> nil
                       

Lembre-se que nil aparece quando puts retorna nada. O que você acha que acontece quando tenta converter um array numa string com Array#to_s?


>> names
=> ["Melissa", "Daniel", "Jeff"]  
>> names.to_s
=> "MelissaDanielJeff"
>> primes
=> [11, 5, 7, 2, 13, 3]
>> primes.to_s
=> "11572133"
                       

Exercícios

1- O que você acha que isso vai fazer:


>> addresses = [ [ 285, "Ontario Dr"], [ 17, "Quebec St"], [ 39, "Main St" ] ]
>> addresses.sort
                       

Como é isso ?:


>> addresses = [ [ 20, "Ontario Dr"], [ 20, "Main St"] ]
>> addresses.sort
                       

Faça esses testes no irb

topo da página

<< Página Anterior | índice | Próxima Página >>
Apostilas de Ruby e RGSS

nossos tutoriais

navegue

livros recomendados