守卫语句 发表于 2025-12-31 分类于 haskell , 基础 在case of中使用守卫语句1234checkConditions :: Int -> StringcheckConditions x = case x of n | n > 5 && even n -> "Greater than 5 and even" _ -> "Other cases" n | n > 5 && even n定义一个n,且n大于5且n为偶数 1234let payStatusCondition = case payStatus of Just ps | Just psInt <- readMaybe ps -> [ChargeLogPayStatus ==. psInt] _ -> [] 为何使用|而不是用&&是因为 && 是一个逻辑运算符,它用于连接两个布尔表达式并返回一个布尔值,而守卫 | 后的条件可以包含模式匹配