【强制】使用集合转数组的方法,必须使用集合的toArray(T[]array),传入的是类型完全一
致、长度为0的空数组。
反例:直接使用toArray无参方法存在问题,此方法返回值只能是Object[]类,若强转其它类型数组将出现ClassCastException错误。
正例:Listlist=newArrayList<>(2);list.add(“guan”);list.add(“bao”);String[]array=list.toArray(newString[0]);
说明:使用toArray带参方法,数组空间大小的length,1)等于0,动态创建与size相同的数组,性能最好。
2)大于0但小于size,重新创建大小等于size的数组,增加GC负担。
3)等于size,在高并发情况下,数组创建完成之后,size正在变大的情况下,负面影响与2相同。
4)大于size,空间浪费,且在size处插入null值,存在NPE隐患。