当前位置: 首页 > news >正文

网站开发的技术支持青州网站建设 258

网站开发的技术支持,青州网站建设 258,apache建设网站,贡井区建设局网站?对于集合取交集、并集的处理其实有很多种方式,这里就介绍3种 第一种 是CollectionUtils工具类 第二种 是List自带方法 第三种 是JDK1.8 stream 新特性 1、CollectionUtils工具类 下面对于基本数据(包扩String)类型中的集合进行demo示例。 public static void main(String[]…对于集合取交集、并集的处理其实有很多种方式,这里就介绍3种 第一种 是CollectionUtils工具类 第二种 是List自带方法 第三种 是JDK1.8 stream 新特性 1、CollectionUtils工具类 下面对于基本数据(包扩String)类型中的集合进行demo示例。 public static void main(String[] args) {String[] arrayA new String[] { 1, 2, 3, 4};String[] arrayB new String[] { 3, 4, 5, 6 };ListString listA Arrays.asList(arrayA);ListString listB Arrays.asList(arrayB);//1、并集 unionSystem.out.println(CollectionUtils.union(listA, listB));//输出: [1, 2, 3, 4, 5, 6]//2、交集 intersectionSystem.out.println(CollectionUtils.intersection(listA, listB));//输出:[3, 4]//3、交集的补集析取disjunctionSystem.out.println(CollectionUtils.disjunction(listA, listB));//输出:[1, 2, 5, 6]//4、差集扣除System.out.println(CollectionUtils.subtract(listA, listB));//输出:[1, 2]} 2、List自带方法 public static void main(String[] args) {String[] arrayA new String[] { 1, 2, 3, 4};String[] arrayB new String[] { 3, 4, 5, 6 };ListString listA Arrays.asList(arrayA);ListString listB Arrays.asList(arrayB);//1、交集ListString jiaoList new ArrayList(listA);jiaoList.retainAll(listB);System.out.println(jiaoList);//输出:[3, 4]//2、差集ListString chaList new ArrayList(listA);chaList.removeAll(listB);System.out.println(chaList);//输出:[1, 2]//3、并集 (先做差集再做添加所有ListString bingList new ArrayList(listA);bingList.removeAll(listB); // bingList为 [1, 2]bingList.addAll(listB); //添加[3,4,5,6]System.out.println(bingList);//输出:[1, 2, 3, 4, 5, 6]} 注意 : intersection和retainAll的差别 它们的返回类型是不一样的,intersection返回的是一个新的List集合而retainAll返回是Bollean类型。 那就说明retainAll方法是对原有集合进行处理再返回原有集合,会改变原有集合中的内容。 注意 : Arrays.asList将数组转集合不能进行add和remove操作。 原因调用Arrays.asList()生产的List的add、remove方法时报异常这是由Arrays.asList() 返回的市Arrays的内部类ArrayList 而不是java.util.ArrayList。 所以正确做法如下 String[] array {1,2,3,4,5};ListString list Arrays.asList(array);List arrList new ArrayList(list);arrList.add(6); 3、JDK1.8 stream 新特性 public static void main(String[] args) {String[] arrayA new String[] { 1, 2, 3, 4};String[] arrayB new String[] { 3, 4, 5, 6 };ListString listA Arrays.asList(arrayA);ListString listB Arrays.asList(arrayB);// 交集ListString intersection listA.stream().filter(item - listB.contains(item)).collect(toList());System.out.println(intersection);//输出:[3, 4]// 差集 (list1 - list2)ListString reduceList listA.stream().filter(item - !listB.contains(item)).collect(toList());System.out.println(reduceList);//输出:[1, 2]// 并集 新建集合:1、是因为不影响原始集合。2、Arrays.asList不能add和remove操作。ListString listAll listA.parallelStream().collect(toList());ListString listAll2 listB.parallelStream().collect(toList());listAll.addAll(listAll2);System.out.println(listAll);//输出:[1, 2, 3, 4, 3, 4, 5, 6]// 去重并集 ListString list new ArrayList(listA);list.addAll(listB);ListString listAllDistinct list.stream().distinct().collect(toList());System.out.println(listAllDistinct);//输出:[1, 2, 3, 4, 5, 6]} 总结 第一种方式常用因为第二种还需要确定该集合是否被多次调用。第三种可读性不高。
http://www.w-s-a.com/news/755203/

相关文章:

  • 网站页面的宽度大网站怎样选域名
  • icp网站备案流程wordpress post 405
  • 网站怎样上传到空间重庆有多少网站
  • 用模板建商城购物网站嘉定专业网站建设
  • 网站开发与应用 论文dede手机医院网站模板
  • 织梦 网站栏目管理 很慢自学网页设计难吗
  • 茶文化建设网站的意义平顶山网站建设服务公司
  • 建设网站详细流程南京宣传片制作公司
  • 合肥网站排名什么网站做电气自动化兼职
  • 如何用api做网站交通建设门户网站
  • 阳西住房和城乡规划建设局网站长沙网站seo技巧
  • 长沙知名网站推广手机画设计图软件
  • 顺德公司做网站自己有网站怎么优化
  • 南京网站开发南京乐识专业外贸流程知乎
  • 盐田区住房和建设局网站分类网站有哪些
  • 建一个团购网站WordPress文章字号设置
  • 做漂亮的网站东营网站seo
  • 网站开发摊销做设计哪个网站可以接单
  • 惠州h5网站建设建设公司网站报价
  • 做网站多少钱 优帮云嘉兴五县两区网站建设
  • 三亚旅游网站策划书企业网站建设的定位
  • 网站建设工作台账网站建设的实验结论
  • 商业网站建设平台制作软件的软件
  • 本地网站开发wordpress页面关键词和描述
  • 微网站 合同软件开发培训方案
  • 怎么做淘宝客网站备案广告公司图片大全
  • 微信小程序展示网站建设多少钱做网站用什么软件初二
  • 瀑布流资源网站模板打码网站建设
  • wordpress 支付宝打赏网站视觉优化的意义
  • 建设网站需要几个文件夹永久免费内存大服务器