Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法理解Perl哈希排序的行为_Perl_Perl Data Structures - Fatal编程技术网

无法理解Perl哈希排序的行为

无法理解Perl哈希排序的行为,perl,perl-data-structures,Perl,Perl Data Structures,我是Perl的初学者,我正在尝试从“开始Perl:Curtis Poe”开始运行这个示例 当我在windows7系统上使用ActivePerl和codepad.org进行尝试时,上述代码的输出 Ovid isn't that much of a hero. Ovid is a fool. anybody else is probably more of a hero than Ovid. Our cheese tray will have: 'limburger''soap slices''b

我是Perl的初学者,我正在尝试从“开始Perl:Curtis Poe”开始运行这个示例

当我在windows7系统上使用ActivePerl和codepad.org进行尝试时,上述代码的输出

Ovid isn't that much of a hero. Ovid is a fool. 
anybody else is probably more of a hero than Ovid.
Our cheese tray will have: 'limburger''soap slices''brie'
我不清楚第三行打印“limburger”“肥皂片”“brie”,但哈希顺序是“limburger”“brie”“肥皂片”


请帮助我理解。

散列不需要订购。如果需要特定的顺序,则需要使用数组

例如:

my @desc = qw(stinky yummy surprise);
my @type = ("limburger", "brie", "soap slices");
my %snacks;
@snacks{@desc} = @type;
现在在
@type
中有了类型

当然,您也可以使用:


散列不是有序的。如果需要特定的顺序,则需要使用数组

例如:

my @desc = qw(stinky yummy surprise);
my @type = ("limburger", "brie", "soap slices");
my %snacks;
@snacks{@desc} = @type;
现在在
@type
中有了类型

当然,您也可以使用:

:

散列是按其索引的标量值的无序集合 关联的字符串键

您可以根据需要设置键或值。

散列是按其索引的标量值的无序集合 关联的字符串键

您可以根据需要选择键或值。

我认为关键是:

my @cheese_tray = values %snacks
从[1]: “散列项以明显的随机顺序返回。实际的随机顺序特定于给定的散列;对两个散列执行完全相同的一系列操作可能会导致每个散列的顺序不同。”

我认为关键是:

my @cheese_tray = values %snacks
从[1]: “散列项以明显的随机顺序返回。实际的随机顺序特定于给定的散列;对两个散列执行完全相同的一系列操作可能会导致每个散列的顺序不同。”