Java 8의 Optional을 인수에 사용해야 하는 이유
지침에서는 Optional을 반환 유형으로 제한해야 한다고 제안하지만, 그 이유에 대한 의문이 생깁니다. 메소드 인수에도 적합하지 않을 수도 있습니다.
접근 방식 선택적 인수
두 개의 선택적 매개변수가 있는 메소드를 고려하십시오.
public int calculateSomething(Optional<String> p1, Optional<BigDecimal> p2) { // Implementation logic }
대체 옵션은 다음과 같습니다.
public int calculateSomething(String p1, BigDecimal p2) { // Null checks added in implementation }
또는:
public int calculateSomething() { // Default implementation with null parameters } public int calculateSomething(String p1) { // Implementation with one parameter } public int calculateSomething(BigDecimal p2) { // Implementation with one parameter } public int calculateSomething(String p1, BigDecimal p2) { // Full implementation }
Optional 사용에 반대하는 주장 인수
다음과 같은 이유로 선택적 인수 사용에 반대하는 사람들도 있습니다.
선택적 인수 사용의 이점
그러나 선택적 인수를 사용하면 다음과 같은 이점도 있습니다.
결론
결국 선택적 인수 사용 여부는 개발팀의 특정 상황과 선호도에 따라 결정됩니다. 지침에서는 반환 유형에만 Optional을 사용하도록 권장하지만 의미의 명확성과 통합 처리가 필요한 특정 시나리오에서는 메서드 인수에 대해 실용적이고 효과적인 선택이 될 수 있습니다. 접근 방식을 결정하기 전에 장점과 단점을 신중하게 고려하는 것이 중요합니다.
위 내용은 메소드 인수에 Java 8의 Optional을 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!