Java

泛型变量在方法参数中的应用

小樊
83
2024-09-15 11:04:01
栏目: 编程语言

泛型变量在方法参数中的应用可以提高代码的复用性和类型安全。泛型允许你在编写方法时定义一个或多个类型参数,这些类型参数在方法体内可以像普通类型一样使用。当调用方法时,可以为这些类型参数指定具体的类型。

以下是一个简单的Java示例,展示了如何在方法参数中使用泛型变量:

public class GenericExample {
    public static void main(String[] args) {
        List<Integer> intList = Arrays.asList(1, 2, 3);
        List<String> strList = Arrays.asList("A", "B", "C");
        
        System.out.println("Sum of integers: " + sumOfList(intList));
        System.out.println("Concatenated strings: " + concatenateList(strList));
    }
    
    // 使用泛型方法计算整数列表的和
    public static <T extends Number> double sumOfList(List<T> list) {
        double sum = 0;
        for (T item : list) {
            sum += item.doubleValue();
        }
        return sum;
    }
    
    // 使用泛型方法连接字符串列表
    public static <T> String concatenateList(List<T> list) {
        StringBuilder sb = new StringBuilder();
        for (T item : list) {
            sb.append(item);
        }
        return sb.toString();
    }
}

在这个示例中,我们定义了两个泛型方法:sumOfListconcatenateListsumOfList 方法接受一个泛型参数 T,它是 Number 类型的子类。这允许我们将 IntegerDouble 等数值类型的列表传递给该方法。concatenateList 方法接受一个泛型参数 T,没有任何类型限制,因此可以接受任何类型的列表。

当我们调用这些方法时,编译器会根据传递的参数类型自动推断泛型参数的具体类型。这样,我们可以使用相同的方法处理不同类型的列表,提高了代码的复用性。

0
看了该问题的人还看了