[SP-pm] Dúvida sobre como "jogar" um array dentro de um hash.

"Flávio R. Lopes" flavio.lopes at links.inf.br
Wed Jul 21 17:31:23 PDT 2010


Olá pessoal.

Num dos exercícios que estou fazendo, uma das soluções (pelo menos que 
estou imaginando) seria colocar o conteúdo de um array dentro de um 
hash, mas quando os elementos são repetidos, só insere a primeira 
instância do elemento.

Supondo um array com os elements:

my  @numeros = (1, 2, 3, 4, 5, 6, 6, 6, 5);

my  %hash = map { $_ => $_ } @numeros;

  while ( my ($chave, $valor) = each %hash ) {

         say "$chave => $valor";

  }


Tenho como saída:
6 => 6
4 => 4
1 => 1
3 => 3
2 => 2
5 => 5


Porque os outros dois elementos "6" e o último elemento "5" não são 
armazenados dentro do hash?
Gostaria que produzisse a seguinte saída (como todos os 9 elementos do 
array):

6 => 6
6 => 6
6 => 6
4 => 4
1 => 1
3 => 3
2 => 2
5 => 5
5 => 5

Onde estou errando?

Abraço,
Flávio





More information about the SaoPaulo-pm mailing list