Java泛型传参

Java泛型传参是将类型作为参数传递,在编译时进行类型检查,确保类型安全。

主要传参方式:‌

1. 泛型类传参‌
// 定义泛型类
public class Generic<T> {
    private T key;
    
    public Generic(T key) {
        this.key = key;
    }
    
    public T getKey() {
        return key;
    }
}

// 使用时的传参
Generic<Integer> genericInteger = new Generic<>(123456);
Generic<String> genericString = new Generic<>("test");

2. 泛型方法传参‌
// 定义泛型方法
public <T> void printArray(T[] inputArray) {
    for (T element : inputArray) {
        System.out.print(element + " ");
    }
}

// 调用时传参
String[] strArray = {"A", "B", "C"};
Integer[] intArray = {1, 2, 3};

printArray(strArray);  // 编译器推断T为String
printArray(intArray);  // 编译器推断T为Integer

3. 集合中的泛型传参‌
List<String> list = new ArrayList<>();
list.add("aaa");     // √ 正确
list.add("bbb");     // √ 正确
// list.add(100);    // × 编译错误,类型不匹配

4. 通配符传参‌

    <? extends T>:上界通配符,接受T及其子类型3
    <? super T>:下界通配符,接受T及其父类型3
    <?>:无界通配符,接受任何类型

类型限制传参‌
使用<T extends Comparable<T>>来限制类型参数必须实现特定接口3。

建议:‌ 在实际项目中,尝试为你的工具类添加泛型参数,比如创建一个通用的数据验证器类,这样可以提高代码的复用性和类型安全性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值