我想寫一個函數,它返回一個基於輸入參數的函數。使用模式匹配返回函數
def myFunction(x: Int): x => Boolean {
x => if (x < 7) false
if (x % 2 == 0) false
else true
}
因此,如果x小於7或甚至會返回false。否則是真的。
我該如何使用模式匹配來編寫它?
如果它對Ints使用模式匹配沒有意義,那麼像Ints列表那樣更復雜的事情呢?
def myFunction(myList: List[Int]): x => Boolean {
// just doing something simple here real life is more complex.
x => if (myList.size() < 7) false
else true
}
謝謝。
謝謝。更復雜的場景呢?可以使用模式匹配嗎? – 2013-05-12 10:50:27
@More Than Five Updated – Mik378 2013-05-12 10:54:39
在這種情況下,模式匹配沒有意義,但如果直接在整數上匹配,編譯器可以創建一個switch/case語句。 – drexin 2013-05-12 10:55:59