>

이 작업을 수행하려고합니다 :

return Optional.of(myMap.getOrDefault(myKey, null));

정말, 내가 원하는 것은 Optional.of(foundVal) 를 반환하는 것입니다  발견되면, 그렇지 않으면 Optional.empty() . 나는 Optional.of(null) 를 믿지 않는다  그것과 같습니다. 내가 원하는 구문은 무엇입니까?

즉,지도 get 를 어떻게 얻을 수 있습니까?  적절한 Optional 를 반환 ?

  • 답변 # 1

    단순하지 않은 이유 :

    return Optional.ofNullable(myMap.get(myKey));
    
    

    JavaDocs

  • 답변 # 2

    이것

    Optional.of(myMap.getOrDefault(myKey, null));
    
    

    정말

    Optional.of(null);
    
    

    NullPointerException 와 함께 실패했을 것이다 . javadoc이 말했듯이

    와이즈 비즈 와이즈 비즈  null입니다

    Throws:
    NullPointerException- if  전달하는 값이 value 인지 알 수 없을 때 존재합니다.  또는 아닙니다 :

    와이즈 비즈 와이즈 비즈  -설명 할 수있는 null 값

    그리고 Optional#ofNullable 이후  이미 null 를 반환합니다  주어진 키에 대한 항목이 없을 때

    와이즈 비즈 와이즈 비즈  만약   이지도에는 키에 대한 매핑이 없습니다

    Parameters:
    를 사용할 필요가 없습니다   value 와 함께  기본 값. 대신 직접 사용할 수 있습니다

    Map#get(Object)
    
    
    null

  • 이전 android - 스키마에 새 열을 추가 할 때 데이터베이스의 버전 번호를 업데이트해야하는 이유는 무엇입니까?
  • 다음 reactjs - 기본 부정확 한 장치 너비 나누기 질문에 대응