我只是想了解下面的代碼:我對以下scala代碼的理解是否正確?
這裏一個新的類型別名設置聲明這是接受一個int參數 並返回一個布爾
type Set = Int => Boolean
功能
這裏聲明瞭一個新方法'contains',它帶有兩個參數Set和Int ,它返回一個布爾值。的布爾值被設置爲在早期 (「類型設置= INT =>布爾」) 但是執行什麼邏輯以確定是否INT「ELEM」被設置的'
def contains(set: Set, elem: Int): Boolean = set(elem)
的成員聲明的函數
這裏定義了一個方法,它返回一個返回函數的集合?
def singletonSet(elem: Int): Set = set => set == elem
完整的代碼註釋:
/**
* We represent a set by its characteristic function, i.e.
* its `contains` predicate.
*/
type Set = Int => Boolean
/**
* Indicates whether a set contains a given element.
*/
def contains(set: Set, elem: Int): Boolean = set(elem)
/**
* Returns the set of the one given element.
*/
def singletonSet(elem: Int): Set = set => set == elem
你問的答案coursera斯卡拉課程作業2 –
我相信他只是要求解釋。事實上,我現在正在學習這門課,功能編程對我來說是全新的。我也有這個assingment的問題...我不想解決方案 - 只是解釋。下面的保拉給出了我所需要的。 – Moby04
我也直覺如何寫這個(最終),但受益於保羅的答案。不是每個來這裏的人都試圖欺騙。感謝Moby捍衛這個問題如何被問到的細節。 +1 – noogrub