更新時(shí)間:2020-12-17 來(lái)源:黑馬程序員 瀏覽量:
IT就到黑馬程序員.gif)
在Scala中,控制結(jié)構(gòu)語(yǔ)句包括條件分支語(yǔ)句和循環(huán)語(yǔ)句。其中,條件分支語(yǔ)句有if語(yǔ)句、if...else語(yǔ)句、if...else if...else語(yǔ)句以及if...else嵌套語(yǔ)句;循環(huán)語(yǔ)句有for循環(huán),while循環(huán)和do...while循環(huán)。條件分支語(yǔ)句和循環(huán)語(yǔ)句的語(yǔ)法格式具體如下。
1.條件分支語(yǔ)句
if 語(yǔ)句的語(yǔ)法格式如下:
if (布爾表達(dá)式){
如果布爾表達(dá)式為true,則執(zhí)行該語(yǔ)句塊
}if...else語(yǔ)句的語(yǔ)法格式如下:
if (布爾表達(dá)式){
如果布爾表達(dá)式為true,則執(zhí)行該語(yǔ)句塊
} else{
如果布爾表達(dá)式為false,則執(zhí)行該語(yǔ)句塊
}if...else if...else語(yǔ)句的語(yǔ)法格式如下:
if (布爾表達(dá)式1){
如果布爾表達(dá)式1為true,則執(zhí)行該語(yǔ)句塊
} else if(布爾表達(dá)式2){
如果布爾表達(dá)式2為true,則執(zhí)行該語(yǔ)句塊
} else if(布爾表達(dá)式3){
如果布爾表達(dá)式3為true,則執(zhí)行該語(yǔ)句塊
} else {
如if...else嵌套語(yǔ)句的語(yǔ)法格式如下:
if (布爾表達(dá)式1){
如果布爾表達(dá)式1為true,則執(zhí)行該語(yǔ)句塊 if(布爾表達(dá)式2){
如果布爾表達(dá)式2為true,則執(zhí)行該語(yǔ)句塊
}
}else if (布爾表達(dá)式3){
如果布爾表達(dá)式3為true,則執(zhí)行該語(yǔ)句塊 else if (布爾表達(dá)式4){
如果布爾表達(dá)式4為true,則執(zhí)行該語(yǔ)句塊
}
}else{
如果以上條件都為false,則執(zhí)行該語(yǔ)句塊
}接下來(lái),通過(guò)一個(gè)判斷變量值的案例來(lái)演示條件分支語(yǔ)句的使用。假設(shè)現(xiàn)在要判斷一個(gè)變量是否等于5,如果是5,則打印出“a的值為5”,如果不是5,則判斷該變量是否等于10,如果是10,則打印出“a的值為10”,否則的話(huà),打印出“無(wú)法判斷a的值”,示例代碼如下:
scala> var a=5
a: Int = 5
scala> if(a==5){
| println("a的值為5")
| }else if(a==10){
| println("a的值為10")
| }else{
| println("無(wú)法判斷a的值")
| }
a的值為52.循環(huán)語(yǔ)句
Scala中的for循環(huán)語(yǔ)句和Java中的for循環(huán)語(yǔ)句在語(yǔ)法上有較大的區(qū)別,對(duì)于Java的for循環(huán),大家都應(yīng)該很清楚了,這里就不作贅述。接下來(lái),我們介紹一下Scala中的for循環(huán)語(yǔ)句。
for循環(huán)語(yǔ)句的語(yǔ)法格式如下:
for(變量<-表達(dá)式/數(shù)組/集合){
循環(huán)語(yǔ)句;
}下面,我們通過(guò)從0循環(huán)到9,每循環(huán)一次則就將該值打印輸出進(jìn)行操作演示。在Scala語(yǔ)法中,我們可以使用“0 to 9”表示從0到9的范圍,范圍包含9,示例代碼如下:
scala> for(i<-0 to 9){
| print(i+" ")
| }
0 1 2 3 4 5 6 7 8 9Scala在for循環(huán)語(yǔ)句中可以通過(guò)使用if判斷語(yǔ)句過(guò)濾一些元素,多個(gè)過(guò)濾條件用分號(hào)分隔開(kāi)。例如,輸出0-9范圍中大于5的偶數(shù),示例代碼如下:
scala> for(i<-0 to 9;if i%2==0;if i>5){
| print(i+" ")
| }
6 8Scala中的while循環(huán)語(yǔ)句和Java中的完全一樣,只要表達(dá)式為true,循環(huán)體就會(huì)重復(fù)執(zhí)行。Scala中while循環(huán)語(yǔ)句的語(yǔ)法格式如下:
while(布爾表達(dá)式){
循環(huán)語(yǔ)句;
}下面,我們通過(guò)打印輸出奇數(shù)的案例來(lái)演示while的使用。假設(shè)有一個(gè)變量x=1,判斷是否小于10,如果是則打印輸出,然后再進(jìn)行+2運(yùn)算。示例代碼如下:
scala> var x = 1
x: Int = 1
scala> while(x < 10){
| print(x+" ")
| x += 2
| }
1 3 5 7 9do...while循環(huán)語(yǔ)句的語(yǔ)法格式如下:
do{
循環(huán)語(yǔ)句;
}while(布爾表達(dá)式)do...while循環(huán)語(yǔ)句與while語(yǔ)句主要區(qū)別是,do...while語(yǔ)句的循環(huán)語(yǔ)句至少執(zhí)行一次。接下來(lái),通過(guò)數(shù)字遞增案例演示do...while的使用。假設(shè)一個(gè)變量x=10,先打印輸出,然后再進(jìn)行+1運(yùn)算,再判斷是否小于20,如果是則進(jìn)行循環(huán)。示例代碼如下:
scala> var x = 10
x: Int = 10
scala> do{
| print(x+" ")
| x += 1
| }
| while(x < 20)
11 12 13 14 15 16 17 18 19
猜你喜歡:
數(shù)據(jù)湖架構(gòu)開(kāi)發(fā)視頻教程【黑馬程序員】
如何使用IDEA工具開(kāi)發(fā)一個(gè)WordCount單詞計(jì)數(shù)程序?
1024首播|39歲程序員逆襲記:不被年齡定義,AI浪潮里再迎春天
2025-10-241024程序員節(jié)丨10年同行,致敬用代碼改變世界的你
2025-10-24【AI設(shè)計(jì)】北京143期畢業(yè)僅36天,全員拿下高薪offer!黑馬AI設(shè)計(jì)連續(xù)6期100%高薪就業(yè)
2025-09-19【跨境電商運(yùn)營(yíng)】深圳跨境電商運(yùn)營(yíng)畢業(yè)22個(gè)工作日,就業(yè)率91%+,最高薪資達(dá)13500元
2025-09-19【AI運(yùn)維】鄭州運(yùn)維1期就業(yè)班,畢業(yè)14個(gè)工作日,班級(jí)93%同學(xué)已拿到Offer, 一線(xiàn)均薪資 1W+
2025-09-19【AI鴻蒙開(kāi)發(fā)】上海校區(qū)AI鴻蒙開(kāi)發(fā)4期5期,距離畢業(yè)21天,就業(yè)率91%,平均薪資14046元
2025-09-19如何使用IDEA工具開(kāi)發(fā)一個(gè)WordCount單詞計(jì)數(shù)程序?
2020-12-17Scala在使用聲明值和變量時(shí)的注意事項(xiàng)有哪些?
2020-12-17詳解MapReduce編程的Map模型和Reduce模型
2020-12-17HBase數(shù)據(jù)庫(kù)物理存儲(chǔ)的存儲(chǔ)方式介紹【大數(shù)據(jù)文章】
2020-12-17HDFS分布式文件系統(tǒng)的優(yōu)點(diǎn)缺點(diǎn)有哪些?
2020-12-16不同系統(tǒng)如何加載數(shù)據(jù)創(chuàng)建RDD?
2020-12-07