Java 일반 방법 모범 사례에는 명시적 유형 매개변수 제공, 유형 와일드카드 선호, 기본 유형의 자제 사용, 경계 와일드카드 선호, 유형 경계를 필요한 조건으로 제한 등이 포함됩니다. 실제 사례: 필터 방법은 짝수를 필터링하는 데 사용되는 일반 방법을 실제로 적용한 것입니다.
Java 일반 메서드 모범 사례
일반 메서드는 코드 재사용성과 코드 단순성을 향상시킬 수 있습니다. Java의 일반 메소드는 다음 모범 사례를 준수해야 합니다.
1. 명시적 유형 매개변수 제공
일반 메소드는 유형 매개변수를 명확하게 지정해야 합니다.
public static <T> List<T> filter(List<T> list, Predicate<T> predicate) { // ... }
2 가능한 경우 유형 와일드카드 사용을 선호합니다. 명시적인 유형 매개변수 대신 유형 와일드카드를 사용하면 코드의 유연성이 높아질 수 있습니다.
public static <T> boolean anyMatch(List<? extends T> list, Predicate<T> predicate) { // ... }
3. 유형 범위를 필수 조건으로 제한하세요.
일반 메서드의 유형 범위는 절대적으로 필요한 조건으로만 제한되어야 합니다. 조건:
// 仅当需要对 T 实现 Comparable 接口时才使用此边界 public static <T extends Comparable<T>> T max(List<T> list) { // ... }
4. 기본 유형은 주의해서 사용하세요.
기본 유형(예: List
)은 유형 안전성을 깨뜨릴 수 있으므로 최대한 사용하지 마세요.
// 使用泛型方法参数更安全 public static <T> List<T> concat(List<T> list1, List<T> list2) { // ... }
5. List
),因为它们会破坏类型安全性:
public static <T> void swap(List<T> list, int i, int j) { T temp = list.get(i); list.set(i, list.get(j)); list.set(j, temp); }
5. 优先使用边界通配符
边界通配符 (<?>
경계 와일드카드( 위 내용은 Java의 일반 메소드에 대한 모범 사례는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!<?>
)를 사용하면 유형 안전성을 깨지 않고 요소를 가져오고 설정할 수 있습니다. public class FilterExample {
public static void main(String[] args) {
List<Integer> numbers = List.of(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
// 过滤出偶数
List<Integer> evenNumbers = filter(numbers, n -> n % 2 == 0);
System.out.println(evenNumbers); // [2, 4, 6, 8, 10]
}
private static <T> List<T> filter(List<T> list, Predicate<T> predicate) {
List<T> filteredList = new ArrayList<>();
for (T item : list) {
if (predicate.test(item)) {
filteredList.add(item);
}
}
return filteredList;
}
}