中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Scala非值類型的作用是什么

發布時間:2021-08-10 17:48:14 來源:億速云 閱讀:153 作者:Leah 欄目:云計算

這期內容當中小編將會給大家帶來有關Scala非值類型的作用是什么,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

方法類型

方法類型在內部表示為(Ts)U,(Ts)是一個類型序列(T1,...,Tn) n>=0,U是一個(值或者方法)類型。這個類型表示一個命名的方法,其參數的類型是T1,...,Tn,返回結果的類型是U。

方法類型是右結合的,(Ts1)(Ts2)U被處理的方式是(Ts1)((Ts2)U)。

一個特例是沒有參數的方法類型。可以寫為=>T的形式。無參數方法名稱表達式將會在每次名稱被引用時求值。

方法類型并不以值的類型的形式存在。如果方法名以值的方式被引用,其類型將會被自動轉換為對應的函數類型(§6.25)。

示例3.3.1 以下聲明:

def a: Int

def b (x: Int): Boolean

def c (x: Int)(y: String, z: String): String

產生以下類型:

a: => Int

b: (Int) Boolean

c: (Int)(String, String) String

多態方法類型

多態方法類型在內部表示為[tps]T,[tps]是類型參數部分[a1 >: L1 <: U1,...,an >: Ln <: Un],n>=0,T是一個(值或方法)類型。該類型表示一個以S1,...,Sn為類型參量并產生類型為T的結果的命名方法,參數類型S1,...,Sn與下界L1,...,Ln和上界U1,...,Un一致(§3.2.4)。

示例3.3.2 以下聲明:

def empty[A]: List[A]

def union[A <: Comparable[A]] (x: Set[A], xs: Set[A]): Set[A]

產生如下類型:

empty: [A >: Nothing <: Any] List[A]

union: [A >: Nothing <: Comparable[A]] (x: Set[A], xs: Set[A]) Set[A]

類型構造器

類型構造器在內部的表示方法類似于多態方法類型。[+/- a1 >: L1 <: U1,...,+/-an >: Ln <: Un] T表示一個期望是類型構造器參數(§4.4)或有對應類型參數子句的抽象類型構造器綁定(§4.3)的類型。

示例3.3.3 以下是類Iterable[+X]的片段:

trait Iterable[+X] {

def flatMap[newType[+X]<:Iterabe[X], S](f: X => newType[S]): newType[S]

}

上述就是小編為大家分享的Scala非值類型的作用是什么了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

盘锦市| 陵川县| 南江县| 平阴县| 浏阳市| 分宜县| 河间市| 泸水县| 靖西县| 长兴县| 芷江| 通山县| 四子王旗| 福贡县| 嵊泗县| 和静县| 乌拉特前旗| 新干县| 芦山县| 长白| 勃利县| 新野县| 枝江市| 徐水县| 怀柔区| 南昌市| 奉贤区| 沈阳市| 隆化县| 永平县| 伊宁县| 鹰潭市| 乌什县| 宣汉县| 武宁县| 隆尧县| 重庆市| 清镇市| 石家庄市| 普宁市| 建昌县|