我有两个哈希值,在数据结构中有几个层次,我想交换它们,然后再切换回去。
$hashref->{$irrelevant}{$key1}
和 $hashref->{$irrelevant}{$key2}
由于它们的名称($a, $b) = ($b, $a)
太长,因此对于一行代码来说太长了。
有没有一种方法可以优雅地完成此操作,或者我是否只能通过与临时变量交换来占用三行?
那些隐藏“无关紧要”的数据含义的人并没有给任何人任何帮助。我们仍然必须编写一个解决方案,但是它必须是抽象的术语,对您或我来说都没有任何意义!
我能想到的最简洁的方法是使用一对哈希片
my $irrelevant_href = $hashref->{$irrelevant};
@{$irrelevant_href}{$key1, $key2} = @{$irrelevant_href}{$key2, $key1};
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句