Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.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
Arrays Perl for循环错误_Arrays_Perl_Perl Data Structures - Fatal编程技术网

Arrays Perl for循环错误

Arrays Perl for循环错误,arrays,perl,perl-data-structures,Arrays,Perl,Perl Data Structures,我是Perl新手,我尝试使用草莓Perl 5版本16执行一个简单的程序,如下所示: #!usr/bin/perl use warnings; use strict; my @array= {1,2,3,5,7,9}; my $i; foreach $i (@array) { print qq(Element is $i\n); } 我得到以下输出: Element is HASH(0x3f8b4c) 然而,我应该收到的输出是: Element is 1 Element is 2 Ele

我是Perl新手,我尝试使用草莓Perl 5版本16执行一个简单的程序,如下所示:

#!usr/bin/perl

use warnings;
use strict;

my @array= {1,2,3,5,7,9};
my $i;

foreach $i (@array)
{
print qq(Element is $i\n);
}
我得到以下输出:

Element is HASH(0x3f8b4c)
然而,我应该收到的输出是:

Element is 1
Element is 2
Element is 3
Element is 5
Element is 7
Element is 9.

感谢您的帮助。

要初始化数组,请使用如下列表

注意:paren只是排序优先级,它们不是特殊的数组语法

卷发界定了匿名hashref,如

my $foobar = {
  foo => "bar",
  baz => "qux",
};
所以发生的事情是,您为数组分配了一个匿名hashref的列表,就像

my @array = ({
  1 => 2,
  3 => 5,
  7 => 9,
})

可以使用。

要初始化数组,请使用如下列表

#!usr/bin/perl

use warnings;
use strict;

my @array= (1,2,3,5,7,9);

foreach my $i (@array)
{
print "Element is ", $i,"\n"; ##Or as u want..many ways to do things in perl
}
注意:paren只是排序优先级,它们不是特殊的数组语法

卷发界定了匿名hashref,如

my $foobar = {
  foo => "bar",
  baz => "qux",
};
所以发生的事情是,您为数组分配了一个匿名hashref的列表,就像

my @array = ({
  1 => 2,
  3 => 5,
  7 => 9,
})
那就行了

#!usr/bin/perl

use warnings;
use strict;

my @array= (1,2,3,5,7,9);

foreach my $i (@array)
{
print "Element is ", $i,"\n"; ##Or as u want..many ways to do things in perl
}
像这样试试。数组应该在括号中。在散列中使用大括号

像这样试试。数组应该在括号中。在散列中使用大括号。

您应该使用()来定义数组实例{},{}用于定义散列

#!usr/bin/perl

use warnings;
use strict;

my @array= (1,2,3,5,7,9);
my $i;

foreach $i (@array)
{
  print qq(Element is $i\n);
}
您应该使用()来定义{}的数组实例,{}用于定义散列

#!usr/bin/perl

use warnings;
use strict;

my @array= (1,2,3,5,7,9);
my $i;

foreach $i (@array)
{
  print qq(Element is $i\n);
}

但你永远不应该做后一件事。:)但你永远不应该做后一件事。:)不是真的。圆括号用于创建列表,而不是数组。数组和散列都可以从列表中初始化。圆括号用于创建列表,而不是数组。数组和散列都可以从列表中初始化。大括号用于查找散列中的数据。散列使用圆括号进行初始化-与数组的初始化方式完全相同。大括号用于查找散列中的数据。散列使用圆括号进行初始化,方式与数组完全相同。