正在使用Try [Unit]吗?

时间:2014-05-27 20:39:33

标签: scala error-handling scala-2.10

我最近遇到了Try / Success / Failure的概念,我想知道如何将它用于返回类型为Unit的方法。是否使用Try[Unit]正确的方法?也许我对Java背景的影响太大了,但强迫调用者处理问题是个好主意吗?

1 个答案:

答案 0 :(得分:10)

Try[Unit]是正常的。例如,如果您持久保存实体,则可以使用:

try { 
    em.persist(entity)
} catch{
  case ex:PersistenceException =>
  handle(ex)
} 

或只是

Try(em.persist(entity)) match {
  case Success(_) => 
  case Failure(ex) => handle(ex)
}