新聞中心
本文和大家重點(diǎn)討論一下Perl foreach用法,Perl語言中可以用Perl foreach處理整個數(shù)組或列表,并且控制變量(本例中為$rock)每一次迭代從列表中取出一個新值。

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站建設(shè)、成都網(wǎng)站制作、彭陽網(wǎng)絡(luò)推廣、重慶小程序開發(fā)公司、彭陽網(wǎng)絡(luò)營銷、彭陽企業(yè)策劃、彭陽品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供彭陽建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com
Perl foreach控制結(jié)構(gòu)中的控制變量
Perl語言中可以用Perl foreach處理整個數(shù)組或列表。Perl foreach從列表的第一個元素一直循環(huán)執(zhí)行到最后一個元素,一次迭代一個:
- Perl foreach$rock(qw{bedrockslatelava}){
- print“Onerockis$rock.\n”;
- }
控制變量(本例中為$rock)每一次迭代從列表中取出一個新值。第一次為“bedrock”,第三次為“l(fā)ava”。
需要注意的是控制變量不是這些列表元素中的一個拷貝,而是這些元素本身!也就是說,如果在循環(huán)中修改這個變量,那原始列表中的元素也會被修改(當(dāng)然,對于列表的修改似乎沒有什么必要,但是對于數(shù)組就不一樣了),這條性質(zhì)如果不清楚,可能對其結(jié)果感到吃驚。
- @rocks=qw{bedrockslatelava};
- Perl foreach$rock(@rocks){
- $rock="\t$rock";#@rocks的每一個元素前都加入一個tab
- $rock.="\n";#每一個元素后都加入換行符
- }
- print"Therocksare:\n",@rocks;
那么當(dāng)循環(huán)結(jié)束是$rock的值為多少呢?其值通循環(huán)開始之前相同!Perl foreach循環(huán)中控制變量的值會被Perl自動保存和恢復(fù),當(dāng)循環(huán)進(jìn)行時(shí),是沒有辦法改變其值得,循環(huán)結(jié)束時(shí),變量的值會回到循環(huán)開始前,如果沒有值則為undef。這意味著如果有一個變量和控制變量有相同的名字時(shí),不用擔(dān)心會混淆他們;也就是說,我們可以用已有的變量做循環(huán)變量,而不用擔(dān)心它的值在循環(huán)中改變了。
◆Perl中最常見的默認(rèn)變量
如果在Perl foreach循環(huán)中省略了控制變量,那Perl會使用其默認(rèn)的變量:$_。除了其不尋常的名字外,這和普通的變量時(shí)一樣的,如下面的代碼所示:
- Perl foreach(1..10){
- print“Icancount$_\n”;
- }
當(dāng)然$_不僅僅是能用在Perl foreach中,雖然它不是Perl中唯一的默認(rèn)變量,但無疑是使用最普遍的。你會看到許多例子中Perl在沒有要求它使用某個變量或值得時(shí)候,會自動使用變量$_.這將節(jié)約程序員大量的時(shí)間來思考使用哪一個變量。請看下面的例子:
$_="Yabbadabbadoo\n";
print;#打印出默認(rèn)變量$_
新聞標(biāo)題:Perlforeach控制結(jié)構(gòu)中的控制變量
鏈接地址:http://fisionsoft.com.cn/article/cdidiio.html


咨詢
建站咨詢
