亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

每天學一點Scala之 Currying函數

發布時間:2020-07-02 10:57:49 來源:網絡 閱讀:377 作者:故新 欄目:建站服務器

1、Curring函數 定義?

    將原來接收兩個參數的一個函數,轉換為兩個函數,第一個函數接收原先的第一個參數,然后返回接收原先第二個參數的第二個函數。

在函數調用的過程中,就變為了兩個函數連續調用的形式

在marathon源碼以及Spark的源碼中,也有體現,所以對()()這種形式的Curring函數,要理解。

2、例子:

object CurryingTest {
   def main(args: Array[String]): Unit = {
      println("---->:\t" + sum(3,4))
      println("---->:\t" + sum2(5))
      println("---->:\t" + sum2(5)(1))
      // 柯里函數
      println("---->:\t" + sum3(4)(8))
   }
   def sum(a: Int, b: Int) = a + b
   def sum2(a: Int) = (b: Int) => a + b  // 由sum函數轉換成sum3函數時的中間過程
   def sum3(a: Int)(b: Int) = a + b
}



其實,柯里函數到底用在什么場景下,并沒有真正理解。

目前,僅僅是,只要看到

sum3(a: Int)(b: Int) = a + b

這種形式,可以直接理解成 或者等價于 

sum(a: Int, b: Int) = a + b

形式




向AI問一下細節

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

AI

开封市| 巴南区| 耒阳市| 营口市| 犍为县| 长宁县| 利津县| 弋阳县| 泗洪县| 鸡东县| 临洮县| 怀化市| 孝义市| 兴业县| 石家庄市| 自贡市| 上虞市| 会东县| 阿城市| 惠东县| 张家口市| 衡阳县| 寿光市| 武安市| 凌源市| 永定县| 罗定市| 攀枝花市| 安龙县| 昌吉市| 扎囊县| 宁波市| 寿阳县| 苗栗市| 类乌齐县| 定日县| 汝城县| 蛟河市| 抚松县| 疏勒县| 乐安县|