용기 (1) 종래
// . 1 Optional.of (T T) 통과 할 수 인스턴스를 생성 선택 널 선택 <직원> Optional.of OP1 = ( 새로운 새 직원 ()); // 2, Optional.empty는 () : 빈 Instance 선택 만들기 옵션 <직원>를 OP2 = Optional.empty (); // . 3 Optional.ofNullable (의 Tt의가) : t가 선택 인스턴스를 생성 nul1되지 않거나 빈 인스턴스 생성하는 옵션을 <직원> OP3 = Optional.ofNullable ( 새로운 새 직원 ()); // 4 isPresent (). 분석 값을 포함 만약에 (op3.isPresent ()) { 에서 System.out.println (op3.get ()); } // . 5 OrElse라는 (의 Tt의) : 호출 객체 값 리턴 값, 그렇지 T를 포함하는 경우 직원 직원 = op3.orElse ( 새로운 새 . 직원 (11 "AAAA" )); 에서 System.out.println (직원); // . 6 orElseGet (공급자들) : 호출 객체 그렇지 값 리턴 값을 포함하는 경우, 반환 값의 획득 직원 Employee2 op3.orElseGet = (() -> 새로운 새 직원 ()); 에서 System.out.println (employee2); // . 7, 맵 (함수 F) 경우의 처리 값 및 반환 처리 선택 달리 Optional.empty () 선택 <직원> = Optional.ofNullable OP4 ( 새로운 새 . 직원 (1, "산" )); 옵션 <정수>지도 = op4.map (예 -> e.getAge ()); System.err.println을 (map.get ()); // . 8, flatMap (기능 매퍼) : 맵과 마찬가지로, 반환 값이 필요합니다 선택적 요소 옵션의 <직원> OP5 = Optional.ofNullable ( 새 새 . 직원 (1, "조 스미스" )); 옵션 <문자열> flatMap = op5.flatMap (예 -> Optional.of (e.getName ())); System.err.println을 (flatMap.get ());