在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Scala/ if 表達式
包對象
Ordered Trait
組合和繼承–定義 final 成員
基本數(shù)據(jù)類型
Match 表達式
類和對象 (三)
操作基本數(shù)據(jù)類型
for 表達式
組合和繼承–重載成員函數(shù)和方法
類和對象 (二)
組合和繼承–定義 factory 對象
組合和繼承–多態(tài)和動態(tài)綁定
Trait 的基本概念
if 表達式
組合和繼承–抽象類
函數(shù)–函數(shù)字面量的一些簡化寫法
while 循環(huán)
組合和繼承–使用組合還是繼承?
訪問控制修飾符
Trait 示例–Rectangular 對象
組合和繼承–定義參數(shù)化成員變量
組合和繼承–定義無參數(shù)方法
類和對象 (一)
函數(shù)–閉包
函數(shù)–類成員函數(shù)
Scala 基本數(shù)據(jù)類型的實現(xiàn)方法
try 表達式處理異常
選擇瘦接口還是胖接口設計?
組合和繼承–小結
創(chuàng)建新的控制結構
使用 import
為訪問控制修飾符添加作用域
Scala 的類層次關系
類和對象 (五)
傳名參數(shù)
柯里化函數(shù)
函數(shù)–頭等公民
組合和組合和繼承–定義 heighten 和 widen 函數(shù)
使用 Package–將代碼放入包中
隱含的 import
所有類的公共子類–底層類型
進一步 Scala
函數(shù)–局部函數(shù)
引用包中的代碼
組合和繼承–使用 override 修飾符
組合和繼承–實現(xiàn)類 Element 的 above,beside 和 toString()方法
類和對象 (四)
函數(shù)–尾遞歸
沒有“break”和“continue”的日子
組合和繼承–調用基類構造函數(shù)
減低代碼重復
函數(shù)–函數(shù)–可變參數(shù),命名參數(shù),缺省參數(shù)
起步 Scala
組合和繼承–擴展類
函數(shù)–部分應用的函數(shù)
開始神奇的 Scala編程之旅
組合和繼承–概述
Trait 用來實現(xiàn)可疊加的修改操作

if 表達式

和其它語言(比如 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++)所支持的程序控制功能,而且由于這些指令都有返回結果,可以使得代碼更為精簡。

if 表達式

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ù)式編程風格。