4

Play 2.0プロジェクトでScalaを使用して、構成ファイルからデータを取得しようとしています。

現在、次のコードを使用して文字列を抽出しています。

val foo = Play.current.configuration.getString("foo")

オブジェクトを取り戻すことを期待していましたStringが、代わりにOption[String]オブジェクトが返されます。

オブジェクトを説明し、 returnsOption[T]を呼び出すJavaドキュメントが見つかりません。toString()Some( foo )

Boolean構成メソッドを使用して構成から値を抽出する場合も同じことが起こります。Intつまり、Option[Boolean]Option[Int]が返されます。

誰かがこのOption[T]オブジェクトが何であるか、そしてapplicationメソッド呼び出しがそれが返されることを意味する形で私が望む値にアクセスする方法を説明できますか?

4

1 に答える 1

6

Scalaでは、typeはtypeOption[T]のオプションの値を表しますT。Javaの用語に慣れている場合は、オプションを「値」と呼ぶことができますnull

Playでは、文字列が存在しない可能性があるため、構成を取得するときに使用されます。Javaを使用して文字列を読み取ろうとすると、が返されnullます。

構成文字列を取得するにはgetOrElse、を使用できます。これにより、構成文字列が存在しない場合のデフォルト値を指定できます。

val foo = Play.current.configuration.getString("foo").getOrElse("bar")
于 2012-10-27T16:50:08.120 に答える