scala中list,map,option的使用

2021-08-14 10:19:21 字數 1405 閱讀 9327

def main(args: array[string]): unit =
//map  預設是不可變的,如果用可變的用mutable.map,這個mutable.map可以put,remove值

val man:map[string,any]=map(

"name"->"gmy",

"age"->25,

"like"->"computer",

"other"->"games"

)val woman:map[string,any]=map(

"name"->"ggh",

"age"->22,

"like"->"tv"

)val man1:mutable.map[string,any]=mutable.map(

"name"->"gmy",

"age"->25,

"like"->"computer",

"other"->"games"

)val woman1:mutable.map[string,any]=mutable.map(

"name"->"ggh",

"age"->22,

"like"->"tv"

)man1.put("***","man")

man1.remove("other")

//合併map 用 ++,會覆蓋相同鍵的值

val persons:map[string,any]=man++woman

val persons1:mutable.map[string,any]=man1++woman1

persons1.keys.foreach(i=>println(persons1(i)))

val man1:mutable.map[string,any]=mutable.map(

"name"->"gmy",

"age"->25,

"like"->"computer",

"other"->"games"

)val name:option[any]=man1.get("name") //some(gmy)

print(name.get) //用 get 獲取裡面的值 gmy

man1.remove("name") //去掉name之後

val name1=man1.get("name") //再獲取name

println(name1) //列印為none

val name2=man1.get("name").getorelse("defaut") //用getorelse

print(name2) //取不到則取預設值defaut

scala中的函式

在scala中定義函式,需要給出 函式名 引數 函式體。例如 def abs x double if x 0 x else x 如果有引數,必須要給出引數型別。如果函式不是遞迴的,返回值型別就可以不寫。scala編譯器自帶型別推導功能。如果函式體由多個表示式組成,可以用 塊的方式來組織,比如 def...

scala 中 的含義

scala 在很多場景中都是用了 因此對 的用法做了總結。有幾種含義所有的含義都和它數學上面的含義相關。scala var x int int doublevar xx x int x 1scala val max x y matchlist 1,2,3 map在使用playframework 裡面...

scala中的函式

1.方法定義用def,函式的引數 要寫型別,不寫型別不可以。2.函式的返回值型別可以不寫,會自動推斷 3.scala會將函式體中最後一行計算的結果當做返回值返回 4.可以寫 return 寫了return要顯式的宣告方法體的返回型別。5.定義方法時,如果不寫 那麼無論方法體中最後一行計算的結果返回是...