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

例外処理について

Javaの例外処理について書きます。 自分はPHPメインでやってきましたので、この例外についてはうろ覚えでした。 PHPだと例外処理はあるんですが、まああんまり使わなかったり、理解がいい加減でもなんと …

no image

Listの簡便な書き方

このエントリーともかぶりますが、リストにクラスを代入するときの簡便な書き方の紹介です。 名前と年齢のプロパティをもつ簡単なクラス(Hoge)をListに格納しようとします。 普通に書くと [crayo …

no image

JPAまとめ

JPAわけわかんねーと思い、触りはじめてから3か月ぐらいたちます。 いまだに細かい部分はよくわかっていないことは多いのですが、全体像というか何となくどういうものかはわかり始めてきたいのでまとめたいと思 …

no image

依存関係エラー

JavaEEで新PCでビルドしたらいきなりエラー。同一のソースを別PCで動かすと正常に立ち上がります。 こんな場合、GlassFishの設定がおかしいか、ライブラリの依存関係に問題があることがほとんど …

no image

リファクタリング

業務で大幅なリファクタリングをする機会があり、その際の注意だったり、気をつけるべきことなどをまとめておきます。 自分用なので自分にしかわからない言葉で書いてある可能性が大きいです。 気になる方は問い合 …