我有关于散列可达性散列的问题,我无法克服,除了使用for和while循环遍历所有元素.哈希散列在这个结构中:
$atomsArray{$number} = {
"x" => $x,
"y" => $y,
"z" => $z
};
for my $number(sort keys %atomsArray){
while ((my $key, my $value) = each(%{$atomsArray{$number}})){
#Counting angles between atoms(x,y,z)
}
Run Code Online (Sandbox Code Playgroud)
还有比这更好的方法吗?
使用哈希切片是一种选择:
my ( $x, $y, $z ) = @{ $atomsArray{$number} }{ qw(x y z) };
Run Code Online (Sandbox Code Playgroud)