in reply to Re: Hash key ordering?
in thread Hash key ordering?
That's exactly how much you can count on - the fact that it is "the same order as" values() and each() means that it also must be the same order as future calls to keys() (by the transitivity property of the word "same"). If you make *any* changes to the hash, this guarantee goes away.(perldoc -f keys) The keys are returned in an appar- ently random order. The actual random order is subject to change in future versions of perl, but it is guaranteed to be the same order as either the `values' or `each' function produces (given that the hash has not been modified).
Of course, this is *not* the same as the OP's original phrase "provided of course that the keys are the same" - you can insert & delete things in a hash and end up with the same eventual set of keys, but your modifications may still change the order of keys().
|
|---|