scala中的隱式轉換之一

2021-07-07 03:37:33 字數 584 閱讀 2436

定義乙個隱式函式:

scala> implicit def inttostring(i:int) = i.tostring

warning: there were 1 feature warning(s); re-run with -feature for details

inttostring: (i: int)string

輸入引數:接受隱式轉換入參為int型別

返回值: 返回結果是string.

隱式函式的函式名可以任意設定,輸入引數型別和返回值型別決定了該隱式函式所代表的隱式轉換方式,

然後自定義乙個函式:

scala> def implicit_test(msg : string) = println(msg)

implicit_test: (msg: string)unit

當該函式的輸入引數型別為int型時,

scala> implicit_test1(123654)

this is implicit test : 123654

說明隱式函式起了隱式轉換的作用,並且隱式函式和函式名,引數名無關,只和輸入引數型別與返回值型別有關。

scala 隱式轉換

defdisplay input string unit println input implicit deftypeconvertor input int string input.tostring implicit deftypeconvertor input boolean string if...

scala 隱式轉換

隱式轉換就是 當scala編譯器進行型別匹配時,如果找不到合適的候選,那麼隱式轉化提供了另外一種途徑來告訴編譯器如何將當前的型別轉換成預期型別。使用方式 將方法或變數標記為implicit 將方法的引數列表標記為implicit 將類標記為implicit 宣告乙個帶有implicit修飾過引數的方...

scala隱式轉換

目錄 隱式轉換的概念 隱式轉換的使用 隱式轉換做引數型別轉換 隱式轉換增強現有型別 隱式引數 利用隱式引數進行隱式轉換 再議context bounds 隱式轉換函式 implicit conversion function 是以implicit關鍵字宣告的帶有單個引數的函式,這樣的函式將被自動應用...