Optional.empty (). orElse ( "test")가 작동하지 않는 이유는 무엇입니까?

임시 _ 사용자 _ 이름

실험하는 동안이 줄을 시도했습니다.

String test = Optional.empty().orElse("test");

-놀랍게도 유형 오류가 발생했습니다. incompatible types: Object cannot be converted to String.

왜 그런 겁니까? 소스를 살펴보면 orElse선택 사항이 비어있는 경우 전달되는 내용을 반환해야합니다. 그래서 나는 무엇을 놓치고 있습니까? 반면에 이것은 잘 작동합니다.

String test = Optional.of("me").orElse("test");
라빈 드라 란 왈라

글쎄, 이것은 제네릭과 관련된 문제입니다. empty()정적 메서드 를 보면 일반적인 메서드이며 유형 변수가 있습니다. 그냥 호출 Optional.empty하면 유형 변수 T가 사용되며 Object호환되지 않는 유형이 있습니다. 옵션 형입니다 Optional<Object>, 그리고 그것은 분배 것 Object아닌가 String. 문제를 해결하려면 형식 매개 변수를 명시 적으로 전달하여 컴파일러를 도와야합니다. 여기 수정이 있습니다.

String test = Optional.<String> empty().orElse("test");

그러나 대상 유형이 Object이면 아래와 같이 String의 일부 하위 유형 이므로 작동 Object합니다.

Object test = Optional.empty().orElse("test");

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

if (empty ($ _ SESSION [ 'username'] [ 'password']))가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

검색 창의 입력에서 empty ()가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

Optional <T>가 Supplier <T>를 구현하지 않는 이유는 무엇입니까?

분류에서Dev

sed가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

indexOf가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

.hover ()가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

CSSArrowPlease가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

setuid가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

pip가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

'DefaultAxesMarkerOrder'가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

free ()가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

REGEX가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

setOnItemLongClickListener가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

removeClass가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

Angularjs가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

VisualStateManager가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

isEOF가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

isdigit ()가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

ActionListener가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

GCC가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

NSMutableArray가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

paintComponent가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

LocalBroadcastManager가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

LocalBroadcastManager가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

getScaledInstance ()가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

JavaScript가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

startActivityForResult가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

swappiness가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

var =-가 작동하지 않는 이유는 무엇입니까?

Related 관련 기사

  1. 1

    if (empty ($ _ SESSION [ 'username'] [ 'password']))가 작동하지 않는 이유는 무엇입니까?

  2. 2

    검색 창의 입력에서 empty ()가 작동하지 않는 이유는 무엇입니까?

  3. 3

    Optional <T>가 Supplier <T>를 구현하지 않는 이유는 무엇입니까?

  4. 4

    sed가 작동하지 않는 이유는 무엇입니까?

  5. 5

    indexOf가 작동하지 않는 이유는 무엇입니까?

  6. 6

    .hover ()가 작동하지 않는 이유는 무엇입니까?

  7. 7

    CSSArrowPlease가 작동하지 않는 이유는 무엇입니까?

  8. 8

    setuid가 작동하지 않는 이유는 무엇입니까?

  9. 9

    pip가 작동하지 않는 이유는 무엇입니까?

  10. 10

    'DefaultAxesMarkerOrder'가 작동하지 않는 이유는 무엇입니까?

  11. 11

    free ()가 작동하지 않는 이유는 무엇입니까?

  12. 12

    REGEX가 작동하지 않는 이유는 무엇입니까?

  13. 13

    setOnItemLongClickListener가 작동하지 않는 이유는 무엇입니까?

  14. 14

    removeClass가 작동하지 않는 이유는 무엇입니까?

  15. 15

    Angularjs가 작동하지 않는 이유는 무엇입니까?

  16. 16

    VisualStateManager가 작동하지 않는 이유는 무엇입니까?

  17. 17

    isEOF가 작동하지 않는 이유는 무엇입니까?

  18. 18

    isdigit ()가 작동하지 않는 이유는 무엇입니까?

  19. 19

    ActionListener가 작동하지 않는 이유는 무엇입니까?

  20. 20

    GCC가 작동하지 않는 이유는 무엇입니까?

  21. 21

    NSMutableArray가 작동하지 않는 이유는 무엇입니까?

  22. 22

    paintComponent가 작동하지 않는 이유는 무엇입니까?

  23. 23

    LocalBroadcastManager가 작동하지 않는 이유는 무엇입니까?

  24. 24

    LocalBroadcastManager가 작동하지 않는 이유는 무엇입니까?

  25. 25

    getScaledInstance ()가 작동하지 않는 이유는 무엇입니까?

  26. 26

    JavaScript가 작동하지 않는 이유는 무엇입니까?

  27. 27

    startActivityForResult가 작동하지 않는 이유는 무엇입니까?

  28. 28

    swappiness가 작동하지 않는 이유는 무엇입니까?

  29. 29

    var =-가 작동하지 않는 이유는 무엇입니까?

뜨겁다태그

보관