ich diese Funktion verwenden Liste der natürlichen Zahlen von Zeichenfolge in folgendem Format zu lesen: [1, 2, 3]
:readMaybe Mit Liste der natürlichen Zahlen lesen
readMaybeIntList :: String -> Maybe [Int]
readMaybeIntList line = case readMaybe line of
Just l -> return l
Nothing -> Nothing
es funktioniert Gerade jetzt nur für ganze Zahlen - was das sein würde, korrekte Art und Weise zu überprüfen, ob die Zahlen natürlich sind? Sollte ich die Just l
Klausel ändern, um zu überprüfen, ob alle Zahlen >=0
sind? Ist es eine gute Idee, Nothing
von solch verschachtelten Just
Klausel zurückzugeben?
nicht eine sehr interessante Antwort, aber ich würde ja zu beiden Fragen sagen, die Sie erhoben – hao
Sie können etwas wie 'Just l | verwenden all (> = 0) l -> ... ' – chi
Ihre case-Anweisung ist äquivalent zu nur' readMaybe line' in der gleichen Weise wie 'if b then true else false' entspricht nur' b'. –