Java8にOptionalクラスのサンプル

2022年1月13日

環境
Windows10 64bit
Eclipse 2019
Java8

書式
1.public T orElse(T other)
存在する場合は値を返し、それ以外の場合はotherを返します。
パラメータ:
other – 存在する値がない場合に返される値、nullも可
戻り値:
値(存在する場合)、それ以外の場合はother

2.ofNullable(T value)
指定された値がnullでない場合はその値を記述するOptionalを返し、それ以外の場合は空のOptionalを返します。

使用例

package com.arkgame.testinfo;

import java.util.Optional;

public class OptionMapDemo {

      private static final String TT = null;
      private static final String SS = "studyskill";

      public static void main(String[] args) {
            // Optionの値を取得
            Optional<String> res = getInfo();
            //値が存在しないとき引数の値を返す
            String gg = res.orElse(SS);
            System.out.println("結果1: " + gg);

            // null場合は値を表示しない 値がnull出ない場合に実行されます
            res.ifPresent(k -> System.out.println("結果2: "+k));
      }

//getInfo関数の定義
      static Optional<String> getInfo() {
            String str = TT;
            //Optionalとして値を戻します
            return Optional.ofNullable(str);
      }
}

実行結果
結果1: studyskill

Java

Posted by arkgame