您好,登錄后才能下訂單哦!
scala-02函數(shù)定義、流程控制、異常處理
一、Scala函數(shù)定義:
(scala函數(shù)定義時候默認會導入包)
(1)val:類似java中final類型的變量(常量)
1,基本格式:val 變量名:變量類型 = 值
2,其中有時變量類型可以省略,可以自動識別
3,變量不能賦值,修改
var :等同于java中的非final型變量
(2)有參數(shù)的函數(shù)定義
def 函數(shù)名(參數(shù)列表,...):返回結果類型={}
Object MyScala{
def Mysca(x:int ,y:int):int={
Var a=x
Var b=y
While(a!=0){
Var temp=a
b=b%a
b=temp
}
b
}
Println(Mysca(120,230))
}
① 有時函數(shù)必須制定返回結果類型,如函數(shù)時遞歸,就必須明確制定返回結果類型;
② 如果函數(shù)僅 一個語句,連花括號都可以不寫。如是max函數(shù)就成了這樣,作用功能仍然沒有變化;
③ Scala語言在進行函數(shù)調(diào)用時可不加();
④ Scala語言在編寫的時候亦可以不用加“;”
⑤ Scala中,i++或者++i都不能其作用,只能使用i=i+1
⑥ foreach與函數(shù)字面量
函數(shù)字面量格式:參數(shù)列表 => 函數(shù)體
(x: Int, y:Int) => x + y
⑦ for循環(huán)中是val類型,因此在for表達式中不能重新對其賦值, <-可以理解為其中的意思for(arg <- args)
注:Scala 三元符表達示例:
var file=if(!args.isEmpty)args(0) else scala.xml
二、異常處理
Scala中異常機制與Java和C++中一樣。但Scala中并沒有受檢異常,也就是不需要說明函數(shù)方法可能會拋出什么異常。
使用throw來拋出一個異常。throw表達式的類型是Nothing。
如果不需要使用捕獲的異常對象,使用_來代替變量名(_是Scala中的通配符)同時也有try/finally語句,通常用來清理??梢越M合成try/catch/finally語句
拋出一個異??雌饋眍愃朴?span >Java。創(chuàng)建一個異常對象,然后使用throw關鍵字把它拋出
throw new IllegalArgumentException
捕捉異常:ry/catch在一個單獨的塊捕捉任何異常,然后使用case塊進行模式匹配。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。