一時的な配列を作成することなく、ハッシュ内のキーの最後の要素にアクセスするにはどうすればよいですか?一時的な配列を使用せずに最後のPerlハッシュキーにアクセスするにはどうすればよいですか?
私はハッシュが順序付けられていないことを知っています。しかし、単純なsort
ハッシュキーの呼び出しを使用して私のキーを注文できるアプリケーション(私のような)があります。なぜ私はこれが欲しいのか説明してくれることを願ってbarney/elmoの例は悪い選択ですが、私は認めますが、そのアプリケーションはあります。
は、次のことを考えてみましょう:
my %hash = (barney => 'dinosaur', elmo => 'monster');
my @array = sort keys %hash;
print $array[$#{$hash}];
#prints "elmo"
TEMP(この場合は@array)に呼び出さずにこれを行う方法上の任意のアイデア?
実際に(sort {$ a cmp $ b} keys%hash)[ - 1]を実行しますか? – mkb
@Matt:そうです。 – Zaid
あなたの編集はあまり明確ではありません。もちろん、ハッシュキーのリストをソートすることはできますが、ここには表示されません。ソート後に最後のキーが欲しいと思うかもしれませんが、前に欲しいという正当な理由は考えられません。これはあなたのコードがしようとしているようです。 –