第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

什么時(shí)候可以省略括號(hào),點(diǎn),大括號(hào),=(函數(shù))等的精確規(guī)則?

什么時(shí)候可以省略括號(hào),點(diǎn),大括號(hào),=(函數(shù))等的精確規(guī)則?

什么時(shí)候可以省略括號(hào),點(diǎn),大括號(hào),=(函數(shù))等的精確規(guī)則?什么時(shí)候可以省略(省略)括號(hào),圓點(diǎn),大括號(hào),=(函數(shù))等的精確規(guī)則?例如,(service.findAllPresentations.get.first.votes.size) must be equalTo(2).service 是我的對(duì)象def findAllPresentations: Option[List[Presentation]]votes 回報(bào) List[Vote]必須和是有規(guī)格的兩種功能為什么我不能去:(service findAllPresentations get first votes size) must be equalTo(2)?編譯器錯(cuò)誤是:“類型為Option [List [com.sharca.Presentation]]的RestServicesSpecTest.this.service.findAllPresentations不帶參數(shù)”為什么它認(rèn)為我試圖傳遞一個(gè)參數(shù)?為什么我必須為每個(gè)方法調(diào)用使用點(diǎn)?為什么必須(service.findAllPresentations get first votes size)相等Too(2)導(dǎo)致:“沒(méi)找到:價(jià)值第一”然而,“必須等于2” (service.findAllPresentations.get.first.votes.size)必須等于2,即方法鏈?zhǔn)欠裾#?nbsp;- 對(duì)象鏈鏈鏈接。我查看了Scala的書籍和網(wǎng)站,無(wú)法找到全面的解釋。事實(shí)上,正如Rob H在Stack Overflow問(wèn)題中解釋的那樣,我可以在Scala中省略哪些字符?,這是省略'。'的唯一有效用例。是用于“操作數(shù)運(yùn)算符操作數(shù)”樣式操作,而不是用于方法鏈接?
查看完整描述

3 回答

?
阿波羅的戰(zhàn)車

TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超6個(gè)贊

你似乎偶然發(fā)現(xiàn)了答案。無(wú)論如何,我會(huì)盡力說(shuō)清楚。

使用前綴,中綴和后綴表示法時(shí)可省略點(diǎn) - 所謂的運(yùn)算符表示法。使用運(yùn)算符表示法時(shí),只有這樣,如果傳遞給方法的參數(shù)少于兩個(gè),則可以省略括號(hào)。

現(xiàn)在,運(yùn)算符表示法是方法調(diào)用的表示,這意味著它不能在沒(méi)有被調(diào)用的對(duì)象的情況下使用。

我將簡(jiǎn)要介紹一下這些符號(hào)。

字首:

只有~!,+并且-可以在前綴符號(hào)使用。這是當(dāng)你寫你所使用的符號(hào)!flagval liability = -debt。

中綴:

這是方法出現(xiàn)在對(duì)象和它的參數(shù)之間的符號(hào)。算術(shù)運(yùn)算符都適合這里。

后綴(也是后綴):

當(dāng)方法跟隨對(duì)象并且不接收任何參數(shù)時(shí),使用該表示法。例如,您可以編寫list tail,這是后綴表示法。

只要沒(méi)有方法,就可以毫無(wú)問(wèn)題地鏈接中綴符號(hào)。例如,我喜歡使用以下樣式:

(list
 filter (...)
 map (...)
 mkString ", ")

這與以下內(nèi)容相同:

list filter (...) map (...) mkString ", "

現(xiàn)在,為什么我在這里使用括號(hào),如果filter和map只使用一個(gè)參數(shù)?這是因?yàn)槲覍⒛涿瘮?shù)傳遞給他們。我不能將匿名函數(shù)定義與中綴樣式混合,因?yàn)槲倚枰粋€(gè)邊界來(lái)結(jié)束我的匿名函數(shù)。此外,匿名函數(shù)的參數(shù)定義可能被解釋為中綴方法的最后一個(gè)參數(shù)。

您可以使用具有多個(gè)參數(shù)的中綴:

string substring (start, end) map (_ toInt) mkString ("<", ", ", ">")

使用中綴表示法很難使用Curried函數(shù)。折疊功能就是一個(gè)明顯的例子:

(0 /: list) ((cnt, string) => cnt + string.size)(list foldLeft 0) ((cnt, string) => cnt + string.size)

您需要在中綴調(diào)用之外使用括號(hào)。我不確定這里的確切規(guī)則。

現(xiàn)在,我們來(lái)談?wù)刾ostfix。Postfix可能很難使用,因?yàn)?em>除了表達(dá)式的結(jié)尾之外,它永遠(yuǎn)不會(huì)被使用。例如,您無(wú)法執(zhí)行以下操作:

 list tail map (...)

因?yàn)槲膊繘](méi)有出現(xiàn)在表達(dá)式的末尾。你不能這樣做:

 list tail length

您可以使用括號(hào)來(lái)標(biāo)記表達(dá)式的結(jié)尾來(lái)使用中綴表示法:

 (list tail) map (...)
 (list tail) length

請(qǐng)注意,不建議使用后綴表示法,因?yàn)?a >它可能不安全。

我希望這已經(jīng)消除了所有的疑慮。如果沒(méi)有,只需發(fā)表評(píng)論,我就會(huì)看到我可以做些什么來(lái)改進(jìn)它。


查看完整回答
反對(duì) 回復(fù) 2019-07-29
  • 3 回答
  • 0 關(guān)注
  • 1221 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)