Programing

Java 8 메소드 참조 : 매개 변수화 된 결과를 제공 할 수있는 공급 업체 제공

lottogame 2020. 4. 9. 07:58
반응형

Java 8 메소드 참조 : 매개 변수화 된 결과를 제공 할 수있는 공급 업체 제공


사용하고 싶습니다

java.util.Optional.orElseThrow()

생성자 매개 변수를 요청하는 예외 유형이 있습니다. 이 같은:

orElseThrow(MyException::new(someArgument)) // obviously NOT working

인수 가치를 전달하는 공급 업체를 만드는 방법이 있습니까?


확실한. orElseThrow(() -> new MyException(someArgument)).


메소드에서 RuntimeException 만 던질 수 있습니다 orElseThrow. 그렇지 않으면 다음과 같은 오류 메시지가 나타납니다.MyException cannot be converted to java.lang.RuntimeException

업데이트 :-이전 버전의 JDK에서 문제였습니다. 최신 버전에서는이 문제가 표시되지 않습니다.


optionalUsers.orElseThrow(() -> new UsernameNotFoundException("Username not found"));

참고 : https://stackoverflow.com/questions/22917138/java-8-method-references-provide-a-supplier-capable-of-supplying-a-parameterize

반응형