Perl語言學習(四)Perl控制結構
四、Perl控制結構
1、if控制結構
控制結構是邏輯實現的基石
三種基本的控制結構
-
if結構是程式最基本的控制結構
-
語法:
if(條件) 執行語句;
if(條件) { 執行語句一; 執行語句二;}
執行語句 if(條件)
if(條件一) {執行語句;} elsif(條件二) {執行語句;} else{......}
書寫格式:儘量使用左邊這種格式
-
unless結構
unless結構是if結構的反義結構,用法同if類似
unless在條件為假時,執行相應的語句
unless(條件) 執行語句;
-
2、foreach 控制結構
-
for控制結構
當演算法的操作物件是一個陣列或雜湊時,利用控制結構來讀取陣列或雜湊中的元素
語法:for(初始化式; 條件; 表示式) { 執行語句;}
執行過程:執行初始化式,判斷條件,表示式求值,重複第二步和第三步,直到第二步的表示式為假
my @array = (1,2,3..50,60,43,32,82..99); my $length_array = @array; for(my $i=0;$i<$length_array;$i++) { if($array[$i]>60) { printf"item $i, value is:$array[$i]\n"; } }
-
for迴圈中斷、跳出的控制,使用next和last
next:跳至本次迴圈的結束位置,開始下一次迴圈
last:跳至迴圈的最後位置,結束迴圈
-
foreach控制結構
for迴圈結構的一種變體
foreach迴圈逐個遍歷列表中的值,依次迭代迴圈過程
語法:foreach 變數(列表){ 執行語句; }
my @array = (1,2,3..50,55,60,43,82..99); foreach my $item (@array) { if($item > 60) { printf("$item\n"); } $item = 150; } printf"wtire's result\n"; foreach my $item (@array) { printf("$item\n"); }
-
預設變數的使用
- $_會取得perl中的預設變數
foreach取得元素並非按照先後順序,而是隨機取的
-
可以使用sort來對元素進行排序然後取出
sort{$a <=> $b} @array; ##按照從小到大進行排序,array都是數字
sort{$a cmp $b} @array; ##按照從小到大進行排序,array都是字母
next, last來對迴圈進行特定控制
在perl中,對於for和foreach,一般大多使用foreach
3、其他控制結構
-
while控制結構
語法:while(條件) {執行語句;}
條件返回值為真時,執行語句,否則退出迴圈
-
一般有三種方法控制迴圈:
計數控制:迴圈執行的次數是預先設定好的,依據所記錄的次數對迴圈進行控制
特殊值控制:通過對某特殊值進行判斷,來決定程式是否執行
使用者互動式控制:通過顯性詢問使用者的意見來判斷是否執行程式
使用last跳出當前迴圈
-
until控制結構
until結構和while結構相反,當條件返回值為假時才執行迴圈內的程式碼
語法:until(條件) { 執行語句;}
-
until和continue一起使用,構建完備邏輯
- 語法:until(條件) {執行語句;} continue {執行語句;}
until (-e "test.txt") { printf"begin to sleep\n"; sleep(1); } continue { printf"waiting for update\n"; } ```
-
switch控制結構
Perl的原始碼中並不支援switch結構
對條件進行判斷,根據選擇值進行相應的程式碼
語法:switch(條件) case 條件值1: 執行語句; case 條件值2: 執行語句; default: 執行語句
相關文章
- perl DBI 學習總結
- 10,其他控制結構(perl筆記)筆記
- perl語言入門
- Perl 6 語言概述
- 學習perl(6)
- 學習perl(5)
- 學習Perl(4)
- 學習perl(3)
- 學習perl(2)
- perl6學習
- Program perl 資料結構資料結構
- perl語言程式設計 下載程式設計
- 6,雜湊(perl語言筆記)筆記
- perl學習筆記1筆記
- perl學習筆記(7)筆記
- Perl語言入門(第四版)(中文版) 下載
- perl學習筆記---標量筆記
- Perl常用語法
- go語言學習-結構體Go結構體
- 10步學習Perl 第一課
- 5,輸入與輸出(perl語言筆記)筆記
- Larry Wall 專訪:語言學、Perl 6 的設計和釋出
- PERL學習筆記---正規表示式筆記
- Perl語言的文書處理模式之一(轉)模式
- Perl語言的文書處理模式之二(轉)模式
- Perl語言的文書處理模式之三(轉)模式
- Nginx和Perl的結合Nginx
- Perl學習筆記(五)——關聯陣列筆記陣列
- perl學習筆記--搭建開發環境筆記開發環境
- Perl 語言程式設計 第三版 線上版本程式設計
- Linux指令碼語言PERL 的模板應用分析(轉)Linux指令碼
- Perl語法的基本規則
- perl Statistics::Descriptive Perl 的統計模組
- perl除錯哲學(轉)除錯
- GO語言————5.1 控制結構之if-else結構Go
- perl教程
- perl DBI DBD和java 的JDBC對比學習JavaJDBC
- 在Linux系統下安裝Perl指令碼語言(轉)Linux指令碼