展开全部

首先, 这个retainAll 方法的作用是 :java.util.ArrayList.retainAll(Collection> collection)

仅保留此collection中那些也包含在指定collection的元素(可选操作)。

换句话说,移除此collection中未包含在指定collection中的所有元素。

此实现在此collection上进行迭代,依次检查该迭代器返回的每个元素,以查看其是否包含在指定的collection中。如果不是,则使用迭代器的remove方法将其从此collection中移除。

其次,返回值的意思是这样的,如果此 collection 由于调用而发生更改,则返回 true

再次,你这个list3 和list1 里面元素的内容 其实是一样的, 这样一来,调用 list3.retainAll(list1) 时候,发现,不需要从list3中去除不在list1中的元素,因此这个list3不需要发生更改,那么返回值就是是false,也就是说,这62616964757a686964616fe58685e5aeb931333335333735个方法的返回值是标识list3 有没有改变,而不是这个方法是否执行正常或者成功

最后,我们再来看看 JDK1.6 这个方法的 源码

public boolean retainAll(Collection> c){

boolean modified = false;

Iterator e = iterator();

while (e.hasNext()){

if (!c.contains(e.next())){

e.remove();

modified = true;

}

}

return modified;

}

retainall java_java用retainALL 处理两个具有相同元素的list,竟然返回false,这是为什么?...相关推荐

  1. python匿名基数(lamdba):给你一个整数数组nums,如果任一值在数组中出现至少两次,返回True;如果数组中每个元素互不相同,返回False,用一行代码解决

    """ 给你一个整数数组nums,如果任一值在数组中出现至少两次,返回True:如果数组中每个元素互不相同,返回False,用一行代码解决 例: nums = [1,2, ...

  2. 给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。

    示例 1: 输入:nums = [1,2,3,1] 输出:true 示例 2: 输入:nums = [1,2,3,4] 输出:false 示例 3: 输入:nums = [1,1,1,3,3,4,3, ...

  3. 对比两个同类型的泛型集合并返回差异泛型集合 ——两个List类名的比较

    1: /// <summary> 2: /// 对比两个同类型的泛型集合并返回差异泛型集合 3: /// </summary> 4: /// <typeparam nam ...

  4. 有3个集合, 从其中一个集合中删除同时存在于另外两个集合的元素

    如下分享的邮件,在博客园做个记录,以便以后使用. 在这里,其实也想倡导一下程序员要具有的分享精神.鼓励大家多分享,平时有什么新的收获,最好在team里做个分享 .分享也是一种很好的事情.对团队来说,可 ...

  5. Python语言学习:利用pandas对两列字段元素求差集(对比两列字段所有元素的异同)

    Python语言学习:利用pandas对两列字段元素求差集(对比两列字段所有元素的异同) 目录 利用pandas对两列字段元素求差集(对比两列字段所有元素的异同) 输出结果 实现代码 利用pandas ...

  6. Java黑皮书课后题第8章:*8.13(定位最大的元素)编写下面的方法,返回二维数组中最大元素的位置。返回值是包含两个元素的一维数组,这两个元素表示二维数组中最大元素的行下标和列下标

    *8.13(定位最大的元素)编写下面的方法,返回二维数组中最大元素的位置.返回值是包含两个元素的一维数组,这两个元素表示二维数组中最大元素的行下标和列下标 题目 题目描述与运行示例 破题 代码 题目 ...

  7. CSS如何实现两个a标签元素的文字一个靠左一个靠右,并且能点击分别不同的链接

    CSS如何实现两个a标签元素的文字一个靠左一个靠右,并且能点击分别不同的链接 作为一个非专业前端,有时候开发又必须自己写一些简单的前端,在网上有时候不能及时查找到内容,只能自己尝试,如下是实现两个sp ...

  8. numpy中两个array数值比较,在IDE中显示完全相同,但是bool判断两个array是否相等却返回False

    numpy踩坑:两个array中数值分别比较,在IDE显示相同,但是bool判断两个array是否相等值却是False 在numpy数据比较时,在IDE显示完全相同但是比较是否相等却有时候返回Fals ...

  9. matlab 判断两个矩阵有元素相等_Matlab入门教程 第 1 章 Matlab基础知识之基本运算...

    1.6 Matlab 基本运算 Matlab 包含三种运算:算术运算.关系运算和逻辑运算. 1.6.1 算术运算 ① 基本算术运算 基本算术运算符:+.-.*./(右除).\(左除).^(乘方) ? ...

  10. Python(65)_写函数,判断用户传入列表的长度,若大于2,则仅保留前两个长度的内容,并将其返回给调用者...

    #-*-coding:utf-8-*- ''' 写函数,判断用户传入列表的长度,若大于2,则仅保留前两个长度的内容,并将其返回给调用者 ''' def func(l):return l[:2] # 其 ...

最新文章

  1. 扒一扒.net、.net framework、mono和Unity
  2. delphi 折叠代码 快捷键_我收藏的几个更快搬砖的vscode快捷键
  3. WinAPI: GetForegroundWindow - 获取前台窗口的句柄
  4. Windows下更改pip镜像源
  5. matlab插值与拟合例题_菜鸟进阶系列:MATLAB数学建模·数据插值与拟合
  6. 学好Java开发的关键七步
  7. antd autoplay按f12才会轮播_涨知识了!原来这才是电脑键盘上,F1到F12的正确用法...
  8. 是人是谁_谁是白鹤滩最可爱的人
  9. 函数栈帧的创建和销毁图解
  10. signature=0727ee8cc38ba70036807ebbc0b018d6,NMSSM+
  11. [转载] python中*args 和 **kwargs区别
  12. Akka增加消息的灵活性《eleven》译
  13. js 正则表达式总结
  14. 当当网价格系统架构分析
  15. TR外汇黑平台资金盘深度揭秘,谨防上当受骗,迟早会跑路
  16. 黑群晖 7.0 安装
  17. 19款最好用的免费数据挖掘工具大汇总
  18. 基于负熵(fastICA)的盲源分离
  19. 数据结构与算法-进阶(八)AOV 网
  20. 目前最赚钱快的微信营销几种玩法和模式

热门文章

  1. 遥感原理与应用——遥感影像及其特征、遥感图像处理
  2. 计算机网络中的冗余的意思,计算机网络基础 实验四 交换网络中冗余链路.ppt
  3. 基于Levy飞行策略的改进樽海鞘群算法( LECUSSA) Matlab代码
  4. ECTOUCH广告图片轮播间隔调整 ECTOUCH教程
  5. CreateIoCompletionPort和完成端口
  6. 使用iPhone配置实用工具编辑APN设…
  7. 深度学习-23:矩阵理论(L0/L1/L2范数)
  8. WPS加载项深入开发代码ribbon解析
  9. xml文件导入wps_电脑中将WPS文档保存为XML格式的方法
  10. 系统背景描述_多元化多功能会议室报告厅智能控制系统方案