<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    jinfeng_wang

    G-G-S,D-D-U!

    BlogJava 首頁(yè) 新隨筆 聯(lián)系 聚合 管理
      400 Posts :: 0 Stories :: 296 Comments :: 0 Trackbacks
    http://www.runoob.com/scala/functions-call-by-name.html


    Scala的解釋器在解析函數(shù)參數(shù)(function arguments)時(shí)有兩種方式:

    • 傳值調(diào)用(call-by-value):先計(jì)算參數(shù)表達(dá)式的值,再應(yīng)用到函數(shù)內(nèi)部;
    • 傳名調(diào)用(call-by-name):將未計(jì)算的參數(shù)表達(dá)式直接應(yīng)用到函數(shù)內(nèi)部

    在進(jìn)入函數(shù)內(nèi)部前,傳值調(diào)用方式就已經(jīng)將參數(shù)表達(dá)式的值計(jì)算完畢,而傳名調(diào)用是在函數(shù)內(nèi)部進(jìn)行參數(shù)表達(dá)式的值計(jì)算的。

    這就造成了一種現(xiàn)象,每次使用傳名調(diào)用時(shí),解釋器都會(huì)計(jì)算一次表達(dá)式的值。

    object Test { def main(args: Array[String]) { delayed(time()); } def time() = { println("獲取時(shí)間,單位為納秒") System.nanoTime } def delayed( t: => Long ) = { println("在 delayed 方法內(nèi)") println("參數(shù): " + t) t } }

    以上實(shí)例中我們聲明了 delayed 方法, 該方法在變量名和變量類(lèi)型使用 => 符號(hào)來(lái)設(shè)置傳名調(diào)用。執(zhí)行以上代碼,輸出結(jié)果如下:

    $ scalac Test.scala $ scala Test  delayed 方法內(nèi) 獲取時(shí)間,單位為納秒 參數(shù): 241550840475831 獲取時(shí)間,單位為納秒

    實(shí)例中 delay 方法打印了一條信息表示進(jìn)入了該方法,接著 delay 方法打印接收到的值,最后再返回 t。

    posted on 2016-12-16 11:42 jinfeng_wang 閱讀(299) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 2016SCALA

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 女人18一级毛片免费观看| 18女人腿打开无遮掩免费| 亚洲人成在线播放| 中文字幕亚洲一区二区va在线| 国产黄色片免费看| 亚洲国产女人aaa毛片在线| 99久久免费精品视频| 农村寡妇一级毛片免费看视频| 在线观看亚洲成人| 免费人成无码大片在线观看| 黄色短视频免费看| 国产午夜亚洲精品不卡免下载| 国产成人亚洲合集青青草原精品| 国产一区在线观看免费| 岛国大片免费在线观看| 综合在线免费视频| 四虎精品视频在线永久免费观看| 在线91精品亚洲网站精品成人| 亚洲天堂福利视频| 91精品国产亚洲爽啪在线观看| 最新仑乱免费视频| 国产精品怡红院永久免费| 久久精品无码专区免费青青| 国内精品免费在线观看 | 阿v免费在线观看| 成人亚洲国产va天堂| 亚洲综合亚洲综合网成人| 日本免费观看网站| 国产女高清在线看免费观看| 国产情侣久久久久aⅴ免费| 51午夜精品免费视频| 精品无码国产污污污免费网站国产| 一级毛片视频免费| 国产福利免费视频 | 特级无码毛片免费视频尤物| 国产自国产自愉自愉免费24区 | 美女被免费网站91色| 国产精品玖玖美女张开腿让男人桶爽免费看| 美女尿口扒开图片免费| 日本亚洲欧美色视频在线播放 | 一级毛片正片免费视频手机看 |