Discuss / Java / JAVA内部其实是知道泛型可变参数的类型的吧

JAVA内部其实是知道泛型可变参数的类型的吧

Topic source

Momo

#1 Created at ... [Delete] [Delete and Lock User]

public static void main(String[] args) {

	        String[] arr = asArray("one", "two", "three");

	        System.out.println(Arrays.toString(arr));

	        // ClassCastException:

	        Object[] firstTwo = pickTwo("one", "two", "three");

	        System.out.println(firstTwo[0].getClass().getName());

	    }



	    static <K> K[] pickTwo(K k1, K k2, K k3) {

	        return asArray(k1, k2);

	    }



	    static <T> T[] asArray(T... objs) {

	        return objs;

	    }

输出的结果:


[one, two, three]

java.lang.String

  • 1

Reply