有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (3) 个答案

  1. # 1 楼答案

    根据Java specification,例如:

    Collections.<String>unmodifiableSet()
    

    (很抱歉问和回答我自己的问题-我只是第三次查这个问题。:-)

  2. # 2 楼答案

    以下是而不是语法

    <ArgType>genericMethod()
    

    似乎类型参数必须位于点之后,如中所示

    SomeClass.<ArgType>genericMethod()
    this.<ArgType>genericMethod()
    p.<ArgType>genericMethod()
    super.<ArgType>genericMethod()
    SomeClass.super.<ArgType>genericMethod()
    SomeClass.this.<ArgType>genericMethod()
    
  3. # 3 楼答案

    java.util.Collection指定定义其自身泛型类型的泛型方法的一个好例子是^{},其中方法签名如下所示:

    <T> T[] toArray(T[] a);
    

    这声明了一个泛型类型T,它是在方法调用时由参数T[] a定义的,并返回一个T的数组。因此,同一实例可以以泛型方式调用toArray方法:

    Collection<Integer> collection = new ArrayList<Integer>();
    collection.add(1);
    collection.add(2);
    
    // Call generic method returning Integer[]
    Integer[] ints = collection.toArray(new Integer[]{});
    
    // Call generic method again, this time returning an Number[] (Integer extends Number)
    Number[] nums = collection.toArray(new Number[]{});
    

    另见java tutorial on generic type parameters