Scala基礎 提取器Extractor使用示例

2021-08-02 17:58:20 字數 965 閱讀 8962

package com.spark.scala.basics

/*** 1.

*/case class person1(name: string, age: int)

class coder(val name:string, val salary: int)

object coder

提取,用

some

封裝成tuple

some((information.substring(0, information.indexof(" ")), information.substring(information.indexof(" ") + 1)))

}}object extractordemo

val

coder(codername, salary) = "spark 1000,000"}}

package com.expgiga.scalatest

/***

在例項化乙個類的時候,可以帶上

0個或者多個引數,編譯器在例項化的時候會呼叫

方法。可以在類和物件中都定義

方法。方法提取指定查詢的值,它與

的操作相反。當在提取器物件中使用

match

語句時,

將自動執行

*/ def main(args: array[string]): unit =

} println("

呼叫方法!

") x * 2

} println("

呼叫方法!

") if(z % 5 == 0) some(z / 5) else none

}}

scala的提取器 Extractor

提取器 extractor 我們之前已經使用過scala中非常強大的模式匹配功能了,通過模式匹配,我們可以快速匹配樣例類中的成員變數。例如 1.建立兩個樣例類 case class person name string,age int case class order id string def m...

Scala 提取器unapply方法

目錄 提取器是從傳遞給它的物件中提取出構造該物件的引數。e.g.傳入name amy,age 10,用於構造student類,這裡可以得到 uname amy,age 10 object client class foo foo string object foo 類似析構函式 例1package ...

Scala系列21 Scala提取器的使用

我們之前已經使用過scala中非常強大的模式匹配功能了,通過模式匹配,我們可以快速匹配樣例類中的成員變數。例如 1.建立兩個樣例類 case class person name string,age int case class order id string def main args array...