gpt4 book ai didi

scala - 验证集合中的元素,为第一个无效元素返回 Failure

转载 作者:行者123 更新时间:2023-12-05 09:06:59 30 4
gpt4 key购买 nike

<分区>

如果我有一些验证函数:

def validateOne(a: A): Try[A]

我现在想通过使用 validateOne 函数来验证 A 的集合

def validateAll(all: List[A]): Try[List[A]]

有没有一种很好的方法可以在发现第一个元素无效时立即返回 Failure

我现在的做法是在验证每个元素后调用 get。对于 validateOne 返回 Failure 的第一个元素,get 抛出包装的异常...我捕捉到重新包装:

def validateAll(all: List[A]): Try[List[A]] = try {
all.map(a => validateOne(a).get)
} catch {
case e: MyValidationException => Failure(e)
}

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com