免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

每天學一點Scala之閉包-創新互聯

  1. 定義

    沙依巴克ssl適用于網站、小程序/APP、API接口等需要進行數據傳輸應用場景,ssl證書未來市場廣闊!成為創新互聯的ssl證書銷售渠道,可以享受市場價格4-6折優惠!如果有意向歡迎電話聯系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

函數在變量不處于其有效作用域時,還能夠對變量進行訪問,即為閉包;也就是說,變量超出了其作用域,還可以使用,就是閉包現象。

  1. 可能針對的使用場景之一?

比方說,年底了,公司針對每個部門的獎金是不同。比方說,銷售部門獎金為10000,研發部門是15000,測試部門12000等,就可以使用閉包來實現

例子,如下:

object BiBaoTest {    def main(args: Array[String]): Unit = {       val salesDepartment = add(10000) //變量salesDepartment相等于一個匿名函數,wages + 10000              println("---->:\t" + salesDepartment(10)) //為銷售部門的某一個員工發工資,基本工資是10              val rDdepartment = add(15000) //變量rDdepartment相等于一個匿名函數,wages + 15000              println("---->:\t" + rDdepartment(100))              val testDepartment = add(12000) //變量testDepartment相等于一個匿名函數,wages + 12000              println("---->:\t" + testDepartment(10))    }        def add(bonus: Int) = (wages: Int) => wages + bonus //bonus,這種形式就是閉包現象 }

或者這樣理解,閉包,是具有某種規律的匿名函數的,更高層次的抽象,

如:

(x: Int) => x + 1 (x: Int) => x + 14 (x: Int) => x + 3 (x: Int) => x + 9 (x: Int) => x + 7 (x: Int) => x + 10 (x: Int) => x + 100 ... 這種匿名函數,結構上,很相似,整體是累加運算,因此,可以抽象成 def add(y: Int) = (x: Int)=> x + y 這種形式

也就是說,傳入的y值不同,就會返回不同的匿名函數

另外有需要云服務器可以了解下創新互聯cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

本文標題:每天學一點Scala之閉包-創新互聯
文章地址:http://m.newbst.com/article22/ccjicc.html

成都網站建設公司_創新互聯,為您提供App開發品牌網站設計自適應網站企業建站域名注冊網站收錄

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

外貿網站制作