我想編寫一個函數,接受一個數字i
和數字xs
和 回報i
列表xs
位置的列表,計數第一個位置爲1。如果i
確實 找到元素不會發生xs
,然後position
返回0Haskell-在列表
到目前爲止,我有這樣的:
import Data.List
position :: Int -> [Int] -> Int
position i xs
| i `elem` xs = i `elemIndex` xs
| otherwise = 0
但是當我編譯,它提供了以下錯誤:
Couldn't match expected type ‘Int’ with actual type ‘Maybe Int’
我知道elemIndex
返回Maybe Int
類型,我定義我的函數返回Int
,但我不知道如何去改變它。有任何想法嗎?
您可以使用fromJust(在Data.Maybe定義)如果你確信它總是一個Just,就打開它的價值。 – erdeszt 2014-12-09 11:59:29