有一句代码不是很明白:File[] keyFiles = toPasteCollection.keySet().toArray(new File[0]);期中toPasteCollection是个hashmap集合,意思就是把这个集合里的Key值取出来放到一个数组当中,我不明白的是传递的数组怎么这样初始化new File[0]?谁帮解释一下?new File[0]怎么理解?HashMap
调试欢乐多
public <T> T[] toArray(T[] array);方法调用此方法,将会把set返回成一个规定的T类型的数组。
new File[0]参数只是为该方法提供一个返回的类型。并没有确切的用途。类似于 File[] keyFiles = (File[])toPasteCollection.keySet().toArray();
仅仅是类似,至于内部的实现这你需要进一步的研究。只能报到你这里了
推荐你仔细研究下java的泛型机制。
现在这句代码返回的数组的大小怎么保证,是个没有长度的数组?无论toPasteCollection集合里的Key值有多少都可以放下?