在项目中遇到这样几种情况:
1.字符串id列表的形式,如果:1,2,3,4,5。需要转换,集合,字符串,数组之间的转换
2.集合交集的获取
我所得到的解决方案都是通过网上获取或修改的,解决方案如下:
1.字符串转字符串数组或者集合
写道
String str = "1,2,3";
String strArr[] = StringUtils.split(str, ",");
String strArr[] = StringUtils.split(str, ",");
以,(逗号)切割,转换为字符串数组.但该代码需要依赖于commons-lang.jar
写道
Set<String> setArr = new HashSet<String>();
org.apache.commons.collections.CollectionUtils.addAll(setArr, strArr);
org.apache.commons.collections.CollectionUtils.addAll(setArr, strArr);
将数据转换为集合。该工具包Set,List等可相互转换,就不一一说明。但该代码需要依赖于commons-collections.jar
2.集合交集问题
集合a: {1,2,3,3,4,5}
集合b: {3,4,4,5,6,7}
CollectionUtils.union(a, b)(并集): {1,2,3,3,4,4,5,6,7}
CollectionUtils.intersection(a, b)(交集): {3,4,5}
CollectionUtils.disjunction(a, b)(交集的补集): {1,2,3,4,6,7}
CollectionUtils.disjunction(b, a)(交集的补集): {1,2,3,4,6,7}
CollectionUtils.subtract(a, b)(A与B的差): {1,2,3}
CollectionUtils.subtract(b, a)(B与A的差): {4,6,7}