【发布时间】:2010-01-05 14:17:05
【问题描述】:
我有这个例子:
my $numbers = [ 1, 2, 3, 4, 5, 6 ];
my $newarray = [ reverse @$numbers ];
此示例包含一些合成代码,使$numbers arrayref 适合reverse 函数。我想删除该代码并做更多类似的事情:
my $newarray = reverse $numbers;
我知道这不起作用,它会返回:
)8936f22x0(YARRA
有没有更好的方法在 Perl 中反转 arrayref 而不改变第一行?
更新:
my $mails = [ reverse @{$mail_api->GetLogSendMail({ customer_id => $id })} ];
想法是让上面这行代码更好。
【问题讨论】:
-
你不喜欢
[ reverse ...]的什么地方? -
如果你想让它更干净,请使用 Ivan Nevostruev 的建议。但老实说,你给出的线路并没有那么糟糕。我会担心别的事情。
-
@Chris 我认为你是对的。我希望有一个我忽略的解决方案。
-
如果我必须反转存储在数组引用中的列表并将其存储在另一个数组引用中,我会做你所做的。除非您发现自己的情况存在重大问题,否则请继续生活。 :)
-
没有重大问题 :) 我只是希望有更好的方法并对其他解决方案感到好奇。继续……