skillup

技術ブログ

Java

Optionalについて その2

投稿日:

JavaEEブログなはずなのに11月はcakeのことばかり書いていて、Javaのことすら書いていないですね(汗)

今日はOptionalについて書きます。

いまいち使い方がわからなかったんですが、自分なりの解釈などができてきたので、メモしておきます。

Optionalとは?

Javaを使い始めてからというもの常に悩まされるのがNullPointerExceptionでしょう。

私の場合、PHPが最初の言語であり、nullでもプログラムが止まることはなかったので、Javaに移ってからはnullチェックをせずに落ちまくりました(汗)

Optionalとはそのnullチェックのためのクラスです。

特徴としては下記のような特徴があります。

  1. nullになる可能性があることをコード上に明示できるため、値チェックを忘れなくなる。
  2. 値が存在するときと、存在しない時の処理を分けやすくなる。

ソース

一般的には下記のように定義します。

参考リンク

http://tomoyamkung.net/2014/11/02/java8-optional-not-use-get-and-ifpresent/

http://qiita.com/shindooo/items/815d651a72f568112910

-Java
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

リソースファイルの読み込み

リソースバンドルは基本的にJSFから参照して呼び出すことが多いんですが、もちろんプログラム内からも呼び出すことはできます。 書き方も単純でリソースバンドルをインスタンス生成してメッセージのキーで呼び出 …

no image

glassfishとDB接続 ~CUI操作~

JavaEEではDBを使うときにglassfish内で設定が必要です。 基本的にはGlassFishでDB接続などのようにブラウザで管理画面から情報を入力することが可能です。 ただCUIや設定ファイル …

no image

GlassFishでDB接続

一般的にWEB系の言語で、DBを使う場合、WEBサーバーとDBサーバーは単独に動くことが一般的です。 JavaEEではアプリケーションサーバーとしてGlassFishを使いますが、先日、GlassFi …

no image

新アプリの本番環境デプロイについて

新しく作ったWEBアプリを本番配置しようとしたんですが、何度もやっているはずの処理がいざやろうとするといろいろと手間取ってしまい、1時間近くかかりました。 容量悪いなーと思いつつ、こういった行為はなる …

no image

try~catch~finallyで気を付けること

JavaでExceptionが発生したとき、基本的にはtry~catch~finallyをつかっているのですが、今回Exceptionが吐かれないという事態があったのでメモします。 [crayon-5 …