小编jgo*_*day的帖子

Haskell模式匹配类型

在haskell中有没有办法做这样的事情?

data Fruits = Apple Int | Orange Int deriving (Eq, Show)

basket = [Apple 2, Orange 4]

from_basket t (x:basket) =
    case x of
        (t i) -> i
        _ -> from_basket t basket
Run Code Online (Sandbox Code Playgroud)

现在我想从水果清单(篮子)中获取'苹果'

from_basket Apple basket
Run Code Online (Sandbox Code Playgroud)

没有明确的模式匹配

case x of
    Apple i -> ...
    Orange i -> ...
    _ ->
Run Code Online (Sandbox Code Playgroud)

haskell

15
推荐指数
3
解决办法
1万
查看次数

标签 统计

haskell ×1