apache的輪子工具CollectionUtils,Java程序員用後愛不釋手

程序員、Java、集合工具類、編程、後端代碼

吐槽

Java程序員天天寫業務代碼,很多複雜計算要自己造輪子太累了

又不安全,然後我點看下org.apache.commons.collections.CollectionUtils

apache的輪子,Java程序員非常喜歡

apache的輪子工具CollectionUtils,Java程序員用後愛不釋手

isEqualCollection兩個集合元素是否相同

String[] arrayA = new String[] { "A", "B", "C" };
String[] arrayB = new String[] { "A", "B", "C" };
//[A, C, E, G, H, K]
List listA = Arrays.asList(arrayA);
List listB = Arrays.asList(arrayB);
System.out.println(CollectionUtils.isEqualCollection(listA,listB));

返回true

交集的補集

說通俗點就去掉重複元素剩下的元素

如下面2個集合重複的有B D F,剩下的就是[A, C, E, G, H, K]

String[] arrayA = new String[] { "A", "B", "C", "D", "E", "F" };
 String[] arrayB = new String[] { "B", "D", "F", "G", "H", "K" };
 //[A, C, E, G, H, K]
 List listA = Arrays.asList(arrayA);
 List listB = Arrays.asList(arrayB);
 //2個數組取交集 的補集
 System.out.println(CollectionUtils.disjunction(listA, listB));

[A, C, E, G, H, K]

代碼場景案例

前端經常傳入重複的元素,後端必須驗證

利用CollectionUtils.disjunction輪子輕鬆搞定

自己寫的話就是循環啊,太難看

apache的輪子工具CollectionUtils,Java程序員用後愛不釋手

1

並集

CollectionUtils.union

apache的輪子工具CollectionUtils,Java程序員用後愛不釋手

交集

CollectionUtils.intersection

apache的輪子工具CollectionUtils,Java程序員用後愛不釋手

差集

CollectionUtils.subtract

listA扣除listB,剩下的元素

差集:返回只存在於listA左集合獨有的數據, 結果【C】

apache的輪子工具CollectionUtils,Java程序員用後愛不釋手

總結

  • 程序員還是儘量用已經造好的輪子去開發
  • 開發效率問題
  • 開發BUG低
  • 代碼也優雅多了

介紹apache的輪子應該沒人會噴吧,程序員加油


分享到:


相關文章: