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

JavaFXの基礎

JavaFXの基礎について書きます。

no image

String,Integer,Booleanの相互変換

データベースにはbooleanでデータが入っているのに画面では0か1の数字でないと表示ができないときなどがあると思います。 そんな時に文字列と論理値、あるいは文字列と数値、数値と論理値の変換などをする …

no image

CSVの入出力に関して

業務でCSVの入出力と格闘中。 まあよくある頻出の作業だったりするんですが、自前でやるとなかなか面倒です。 面倒なポイントとしては クオートのエスケープ カンマのエスケープ ヘッダーとの結合 ですかね …

no image

Messageプロパティの設置方法

JavaEEに限らず、エラーメッセージなどは通常、プログラムの中に書くのではなく、できればエラーメッセージファイルの中で管理するのが望ましいでしょう。 またJSF側の名称の表示なども直接xhtmlの中 …

no image

Fileのアップロード

業務でCSVのアップロードを行っていますが、ファイルになりますと当然文字列ではなく、バイナリ形式のデータが必要になります。 アップロード自体の処理を書いていなかったので、その扱い方についてちょっと書い …