條件判斷格式如下:if (邏輯條件) 語句 else 語句如果判斷后需要執(zhí)行多條語句,格式如下:if (表達式){語句1語句2}else{語句3語句4}注意;上面對大括號書寫的位置,兩個分支部分書寫不一樣,但都是合法的寫法。如果要寫在同一行,需要使用分號,如下:if (表達式){語句1;語句2;}else{語句3;語句4;}如果分支條件超過2個,可以使用else if,如下:if (表達式){語句1語句2}else if{語句3語句4}else{語句5語句6}對于只有2個分支的情況,還有一種簡便寫法(表達式)? action1:action2例如:grade = ( avg > 65) ? “pass”:”fail”相當于if(avg>65) grade=”pass” else grade=”fail”這部分比較簡單,跟C語言非常類似。最后對表達式做簡單說明。表達式可以是簡單的邏輯判斷表達式,例如:avg >65avg == 70注意邏輯判斷相等需要用“==”表達式也可以用正則,例如:avg ~ /[0-9]/多個條件可以用“&&” 、”||”等邏輯運算符連接。循環(huán)首先講下while循環(huán),格式如下:while (表達式) action如果是多個語句要執(zhí)行,跟if語句方式一樣,如下:while (表達式){ action1action2}while內表達式為真時,循環(huán)執(zhí)行語句,為假時則循環(huán)退出執(zhí)行后面的語句再來看do循環(huán),格式如下:doactionwhile (表達式)或do{action1action2}while (表達式)跟while執(zhí)行條件一樣,表達式為真執(zhí)行循環(huán),為假則退出循環(huán)執(zhí)行后面的語句。但是要注意與while循環(huán)的不同,do循環(huán)在判斷條件之前會先執(zhí)行一次循環(huán)內的代碼,之后才判斷表達式。而while則是先判斷表達式后執(zhí)行代碼。也就是,do循環(huán)不管條件真假,至少會執(zhí)行一次代碼。對于初學者,要特別注意。for循環(huán)for循環(huán)是一種固定循環(huán)次數(shù)的循環(huán),格式如下:for(計數(shù)器變量初始化;計數(shù)器變量表達式;計數(shù)器變量步増操作)action或for(計數(shù)器變量初始化;計數(shù)器變量表達式;計數(shù)器變量步増操作){action1action2}計數(shù)器變量初始化,例如:i=1計數(shù)器變量表達式,例如:i<100計數(shù)器變量步増操作,例如i++影響流控制的語句break和continue會影響流控制。break語句會退出當前循環(huán),執(zhí)行循環(huán)外的語句。continue語句會終止當前循環(huán)本次的執(zhí)行,執(zhí)行循環(huán)下一次的循環(huán)執(zhí)行。另外有兩個影響主輸入循環(huán)的語句,next和exit。next可以導致讀入下一個輸入行,并返回到腳本的頂部exit語句是從循環(huán)退出,并將控制轉入END部分;如果沒有定義END,那么會退出執(zhí)行。數(shù)組數(shù)組中的每一個元素通過他們在屬主總的下標來訪問。每個下標都用方括號括起來。下面是一個個數(shù)組賦值的例子:arr[1]=100數(shù)組的大小不需要指明,只需要為數(shù)組指定標識符。結合for循環(huán),可以方便的獲得數(shù)組每個數(shù)組元素:例如:輸出數(shù)組arr1中5個元素值imax=5for (i=1;i<=imax;;i+=)print arr1[i]關聯(lián)數(shù)組在awk中,所有數(shù)組都是關聯(lián)數(shù)組。關聯(lián)數(shù)組的獨特之處在于他的下標可以是一個字符串或一個數(shù)值。關聯(lián)數(shù)組在數(shù)字的下標和元素之間建立了一種“關聯(lián)”。對于數(shù)組中的每個元素都有兩個相關的值:元素的下標和元素的值。這些元素不像傳統(tǒng)的數(shù)組那樣按一定的順序存儲。當然,awk中的數(shù)組的下標也可以是數(shù)據(jù)型的,也能夠順序訪問數(shù)組中的所有元素。但是這些下標的意義和其他編程語言所表示的意義不同-他們不一定代表數(shù)的位置。關聯(lián)數(shù)組是awk中的一個獨特的特征,它的一個強大功能就是可使用字符串作為一個數(shù)據(jù)的下標。例如:我們可以使用的一個字段作為數(shù)組的下標:arr1[$1]=$2有一個特殊的循環(huán)方法可以訪問關聯(lián)數(shù)組的所有元素。它是for循環(huán)的一個版本。for (variable in array)print array[arriable]但是訪問數(shù)組中的條目的順序是隨機的。在awk實現(xiàn)中,這種順序經(jīng)常發(fā)生變化。記住awk中的所有數(shù)組下標都是字符串類型,即使使用了數(shù)字作為下標,awk將自動將它們轉換為字符串。如果使用實數(shù),過去某些版本可能會將實數(shù)轉換為整數(shù),在CentOS7.6下,也可以使用實數(shù)作為下標。關鍵字in也是一個操作符,可以在表達式中測試一個下標是否是數(shù)組的成員。表達式為:item in array例如:if ( "basic" in arr1)
鄭重聲明:本文內容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權歸原作者所有,如有侵權請聯(lián)系管理員(admin#wlmqw.com)刪除。
NVIDIA、高通等合作,為汽車電池廠商提供5G VR協(xié)作方案
上一篇 2022年6月16日 06:10
蘋果不太可能推出新款12英寸MacBook/Pro筆記本
下一篇 2022年6月16日 06:10