는이 코드가 있습니다새로운 연산자로 3 항 연산자를 사용하는 방법은 무엇입니까?
if (providers.length > 0)
this.providers = providers;
else
throw new IllegalArgumentException();
을 그리고 나는 그것을 단순화하고 싶다. 내가 갔다 :
(providers.length > 0) ? this.providers = providers : throw new IllegalArgumentException();
그러나 그것은 나에게 컴파일러 오류를 준다. 왜?
다소 간결하고 읽기가 어렵다. – luk2302
삼항 연산자 구문은'condition? value1 : value2'이다.'throw' 문은 값이 아니다. e 삼항 연산자는'if' 문에 대한 보편적 인 단축 표현이 아닙니다. – khelwood
[Java의 삼항/조건부 연산자 (? :)를 사용하면 값을 할당하는 대신 메서드를 호출 할 수 있습니까?] (http://stackoverflow.com/questions/12554547/can-javas-ternary-conditional-operator-be) -used-to-call-methods-of-of) –