定义一个泛型的List<String>list = new ArrayList<String>( ); list.add("1"); list.add("2");

此时使用list.toArray( )为什么返回的类型为Object[ ],而不是String[]类型呢
java语言
最新回答
初雪未央

2024-11-23 09:24:26

因为JAVA的泛型不是真的泛型,而只是语法糖而已。泛型其实只是在编译器中实现的而虚拟机并不认识泛型类项,所以要在虚拟机中将泛型类型进行擦除。
具体可以参考<thinking in java>有关泛型的章节。
╰未成年的花朵

2024-11-23 08:02:57

使用带参数的toArray方法返回的是String[]