[Cascavel-pm] [map]
André Garcia Carneiro
andre.garcia.carneir em terra.com.br
Sexta Janeiro 26 07:18:46 PST 2007
Hummm... não sabia disso, valeu!!!
Poderia fazer um comparativo com o foreach, se não for incomodar???
Cheers!
> Olá André,
>
> > Por quê??
> >
> > Acho que "visualmente" falando é mais fácil ler
> > map {}@list; do que
> > my @list;
> > foreach $item(@list)
> > {
> > #blablabla
> > }
>
> Além de melhorar a legibilidade, map cria e devolve para o caller um
> array com os resultados da última expressão que você executou dentro
> do block. Isso significa que você vai ocupar memória desnecessária.
>
> É OK para três operações, poré sem você tiver uma lista com 1_000_000
> de iterações, e você imprimir algo na tela, map criará e populará uma
> lista com 1_000_000 elementos, com valor 1.
>
> Veja o código a seguir:
>
> <code>
> use strict;
> use warnings;
>
> use Devel::Size qw(total_size);
> use Smart::Comments;
>
> my @array = map { 1 } ( 1 .. 1_000_000 );
>
> ### total_size: total_size( \@array )
>
> </code>
>
> A saída dele é:
>
> ### total_size: 20000052
>
> Este valor em bytes.
>
> HTH!
>
> --
> Igor Sutton Lopes <igor.sutton em gmail.com>
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>
> E-mail classificado pelo Identificador de Spam Inteligente Terra.
> Para alterar a categoria classificada, visite
>
http://mail.terra.com.br/protected_email/imail/imail.cgi?+_u=andre.garcia.carneir&_l=1,1169823944.457579.6730.alcala.hst.terra.com.br,4384,Des15,Des15
>
> Esta mensagem foi verificada pelo E-mail Protegido Terra.
> Scan engine: McAfee VirusScan / Atualizado em 25/01/2007 / Versão: 5.1.00/4949
> Proteja o seu e-mail Terra: http://mail.terra.com.br/
>
>
--
André Garcia Carneiro
Developer(Perl/PHP)
Member of "São Paulo Perl Mongers" - http://sao-paulo.pm.org
Mais detalhes sobre a lista de discussão Cascavel-pm