Scala的模式匹配

2021-09-07 08:31:50 字數 2349 閱讀 1011

一:普通的模式匹配

1.概述

2.程式示例(普通的示例)

1

packagety2

3object matchcasetest

7 def judgegrade(grade:string): unit =14}

15 }

3.效果

4.if守衛

1

packagety2

3object matchcasetest

8 def judgegrade(grade:string,name:string ): unit =16}

17 }

5.效果

二:array模式匹配 

1.模式匹配(array)

2.程式示例(array)

1

packagety2

3object arraymatch

9 def judge(arr:array[string]): unit =19}

20 }

3.效果

三:list模式匹配

1.模式匹配(list)

2.程式示例

1

packagety2

3object listmatch

9 def judge(list:list[string]): unit =16}

17 }

3.效果

四:遍歷與模式匹配結合

1.遍歷

1

packagety2

3object formatch

10))11}

12 }

2.效果

五:樣例類

1.模式匹配(case class)

2.程式示例(傳統)

1

packagety2

class

s(name:string,age:int)

5object s

8object traditionmatch

13 }

3.效果

4.程式示例(case class)

1

packagety2

case

class

r(name:string,age:int)

5object caseclass

10 }

5.效果

六:類模式匹配

1.程式示例,模式匹配(匹配類)  

1

packagety2

3//定義乙個類

4class

per5

case

class tt(name:string,project:string) extends

per8

case

class ss(name:string,room:string) extends

per11

class

judgeclass()18}

19}20object classmatch

26 }

3.效果

Scala模式匹配

1.常量匹配 def constantmatch x int string x match def constantmathtest 輸出結果 one many2.列表匹配 def sequencematch x list int string x match def sequencemathtes...

scala模式匹配

這是scala中最有用的部分之一。匹配值val times 1 times match 使用守衛進行匹配 times match 注意我們是怎樣將值賦給變數 i 的。在最後一行指令中的 是乙個萬用字元 它保證了我們可以處理所有的情況。否則當傳進乙個不能被匹配的數字的時候,你將獲得乙個執行時錯誤。我們...

scala模式匹配

這是scala中最有用的部分之一。匹配值val times 1 times match 使用守衛進行匹配 times match 注意我們是怎樣將值賦給變數 i 的。在最後一行指令中的 是乙個萬用字元 它保證了我們可以處理所有的情況。否則當傳進乙個不能被匹配的數字的時候,你將獲得乙個執行時錯誤。我們...