更好的安全从scala中的数组获取?

igr*_*igr 0 scala scala-collections

我想获得main可选方法的第一个参数,如下所示:

val all = args(0) == "all"
Run Code Online (Sandbox Code Playgroud)

但是,如果没有提供参数,则会因异常而失败.

是否有任何单行简单的方法来设置all,以false当ARGS [0]是缺失; 而不做常见的事情if-no-args-set-false-else...

dk1*_*k14 13

一般情况下,您可以使用提升:

 args.lift(0).map(_ == "all").getOrElse(false)
Run Code Online (Sandbox Code Playgroud)

甚至(感谢@enzyme):

 args.lift(0).contains("all")
Run Code Online (Sandbox Code Playgroud)