List,Set 轉 Array數組

背景:集合 list ,set 都是繼承  Collection<E>,提供了一個toArray的方法,這是沒錯的,可是不是太難滿足開發過程中的需求,因爲toArray()方法 返回的是一個Object[] ,比如我們需要String[],就有點麻煩

解決:查看方法 T 是一個泛型,返回T []

查看toArray(T[] a) 的實現源碼可知,a的length 爲 0 必定小於 集合(list,set)的長度,所以返回list所有的值到a 

1、list<String> 轉 String[]

List<String> l = Arrays.asList("a", "b", "c", "d","e","f","g","d");
String[] str = resultList.toArray(new String[0]);

2、set<Long> 轉 Long[]

        Set<Long> set = new HashSet<>();
        set.add(1l);
        set.add(2l);
        set.add(3l);
        set.add(4l);
        Long[] strings1 = set.toArray(new Long[0]);

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章