前回までの解説でまだ紹介していないStreamインタフェースのメソッドは、いずれも戻り値の型がOptionalクラスという共通点があります。 Optionalクラスは、Java SE 8で導入された新しい概念を表すクラスです。そこで、今回はストリームのメソッドを紹介する前に、このOptionalクラスについて紹介します。 Optionalクラス Javaでコードを書いていると、どうしても避けて通れないのがnullチェックです。 たとえば、リスト1のようにメソッドの戻り値のnullチェックを行うなど、頻繁に書かなくてはならないですし、目にすることも少なくありません。 リスト1 典型的なnullチェック Bar bar = foo(); if (bar != null) { // 正常な場合の処理 } else { // nullの場合の処理 } もちろん、nullチェックは防御的プログラミン
![詳解 Java SE 8 第11回 nullチェックとOptional](https://cdn-ak-scissors.b.st-hatena.com/image/square/bed39b5962a5d552c95b6d796db8f55e72d32943/height=288;version=1;width=512/https%3A%2F%2Fxtech.nikkei.com%2Fimages%2Fn%2Fxtech%2F2020%2Fogp_nikkeixtech_hexagon.jpg%3F20220512)