W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
和其它語言(比如 Java,C#)相比,Scala 只內置了為數(shù)不多的幾種程序控制語句: if,while,for ,try match 以及函數(shù)調用,這是因為從Scala 誕生開始就包含了函數(shù)字面量,Scala 內核沒有定義過多的控制結構,而是可以通過額外的庫來擴展程序的控制結構。
Scala的所有控制結構都有返回結果,如果你使用過 Java或C#,就可能了解 Java 提供的三元運算符 ?: ,它的基本功能和 if 一樣,當可以返回結果。Scala 在此基礎上所有控制結構(while,try,if,等)都可以返回結果。這樣做的一個好處是,可以簡化代碼,如果沒有這種特點,程序員常常需要創(chuàng)建一個臨時變量用來保存結果。
總的來說,Scala 提供的基本程序控制結構,“麻雀雖小,五臟俱全”,雖然少,但足夠滿足其他指令式語言(如 Java,C++)所支持的程序控制功能,而且由于這些指令都有返回結果,可以使得代碼更為精簡。
Scala 語言的 if 的基本功能和其它語言沒有什么不同,它根據(jù)條件執(zhí)行兩個不同的分支,比如,使用 Java 風格編寫下面 Scala 的 if 語句的一個例子:
var filename="default.txt"
if(!args.isEmpty)
filename =args(0)
上面代碼和使用 Java 實現(xiàn)沒有太多區(qū)別,看起來不怎么像 Scala 風格,我們重新改寫一下,利用 if 可以返回結果這個特點。
val filename=
if(!args.isEmpty) args(0)
else "default.txt"
首先這種代碼比前段代碼短,更重要的是這段代碼使用 val 而無需使用 var 類型的變量。使用 val 為函數(shù)式編程風格。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: