gpt4 book ai didi

java 泛型

转载 作者:行者123 更新时间:2023-11-29 05:07:02 25 4
gpt4 key购买 nike

我有这个代码:

public class Test<T extends Number>{
public static void main(String[] args){
Test<Short> test = new Test(Short.class);
System.out.println(test.get());
}
private Class<T> clazz;
public Test(Class<T> clazz){
this.clazz=clazz;
}
public T get(){
if(clazz == Short.class)
return new Short(13); //type missmatch cannot convert from Short to T
else return null;
}
}

但它无法编译...知道如何修复它吗?

最佳答案

你不能用 int 构造一个 Short(没有这样的构造函数),你可以像这样转换为 T

public T get() {
if (clazz == Short.class)
return (T) Short.valueOf((short) 13);
else
return null;
}

关于java 泛型 <T extends Number>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30051837/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com