## 이펙티브 자바 - item 30. 이왕이면 제네릭 메서드로 만들라 ## 이펙티브 자바 - item 30. 이왕이면 제네릭 메서드로 만들라 ### 로 타입으로 작성된 두 집합의 합집합을 반환하는 메서드 클래스와 마찬가지로 메서드도 제너릭으로 만들 수 있다. ### 로 타입을 작성된 두 집합의 합집합을 반환하는 메서드 ```java public static Set union(Set s1, Set s2) { Set result = new HashSet(s1); result.addAll(s2); return result; } ``` 위의 코드는 컴파일은 되지만 unchecked call 경고가 두 개 발생한다. 경고를 없애기 위해서는, 메서드를 타입 안전하게 만들어야 한다. 메서드 선언에서 세 집합(입력 2개, 반환 1개)의 원소 타입을 타입 매개변수로 명시하고, 메서드 안에서도 이 타입 매개변수만 사용하게 수정한다. ```java public static Set Union(Set s1, Set s2) { Set result = new HashSet<>(s1); result.addAll(s2); return result; } ```