
T从 LHS 分配中使用的具体类型推断出类型。
从此链接:
如果类型参数未出现在方法参数的类型中,则编译器无法通过检查实际方法参数的类型来推断类型参数。如果类型参数出现在方法的返回类型中,则编译器将查看使用返回值的上下文。如果方法调用显示为分配的右侧 *** 作数,则编译器将尝试从分配的左侧 *** 作数的静态类型推断方法的类型参数。
链接中的示例代码与您所询问的代码相似:
public final class Utilities { ... public static <T> HashSet<T> create(int size) { return new HashSet<T>(size); } } public final class Test public static void main(String[] args) { HashSet<Integer> hi = Utilities.create(10); // T is inferred from LHS to be `Integer` } }欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)