1 List判空
雖然 Collection的List本身具有.isEmpty()方法判空,但是,
使用CollectionUtils.isEmpty(list),可避免第一種方法在集合為null的情況下出現的空指針問題。
2 數組轉List
Arrays.asList();
Collections.singletonList();
Collections.singletonList(something)是不可變的,而Arrays.asList(something)是一個固定大小的List表示的數組,其中列表和數組加入堆中。
Arrays.asList(something)允許對其進行非結構更改,這將同時反映到列表和連接數組中。它拋出UnsupportedOperationException來添加、刪除元素,盡管您可以為特定索引設置元素。
對Collections.singletonList(something)返回的列表所做的任何更改都將導致UnsupportedOperationException。
另外,由Collections.singletonList(something)返回的列表的容量始終是1,而不像Arrays.asList(something),后者的容量將是備份數組的大小。
singletonList將占用更少的內存。