perl中的各种数据类型和引用

因为要给测试部门换bugzilla,但是原生的不符合我的需求,得改一下。看了一圈发现得先把perl稍微了解一下才能走下一步,看了两天。其实我也不是很明白,中文电子书看了一半然后又去看英文原文(所以有些概念我不知道怎么翻译准确,只能将就了,意思到了即可,有些概念理解上肯定是错的,但是我根据我自己的理解写了几个例子都能得到我想要的结果,所以应该大概没有太大偏差吧- -,还有看了两天的我发现我真的没有办法用语言去描述perl里的一些概念,只可意会不可言传,我只想说@$& <-代表了我的心情,某种意义上的中文里的上海话)

perl的数据类型大概


标量

$a = "a"

列表

@a=("a")

或者($a) =("a")

取值 $a[0]

哈希

%a =("a"=>1,

           "b"=>2)

取值$a{"a"}

子程序

sub a {} 如果定义传参默认传给@_


匿名数组(对象中的引用类型)

$a =[1,2,3]

$$a[0]

匿名哈希(对象中的引用类型)

$a ={"a"=>1,"b"=>2}

取值 $a ->{"a"}


2 引用的概念

$a =\@_

$a =\%a

$a =\&a


以下的例子感受一下


#!/user/bin/perl

@a=(1,2,3);
print $a[0];
$a=[1,2,3];
print $$a[1];
$a={'a'=>1,'b'=>2};
print $a->{'a'};
print $$a{'a'};
%a = ('a'=>1,'b'=>2,'c'=>3);
print $a{'a'};




%a = ("name"=>"tom"); 


sub sleep(){
my $self=\@_; 
print $$self[0];
}


&sleep(%a);


$a = {"name"=>"tom"};
sub sleep (){
my ($a) = @_;
print $a->{"name"};
}


&sleep($a);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值