【Groovy】集合遍历 ( 操作符重载 | 集合中的 “ + “ 操作符重载 | 集合中的 “ - “ 操作符重载 | 代码示例 )
生活随笔
收集整理的这篇文章主要介绍了
【Groovy】集合遍历 ( 操作符重载 | 集合中的 “ + “ 操作符重载 | 集合中的 “ - “ 操作符重载 | 代码示例 )
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
文章目录
- 一、集合中的 " + " 操作符重载
- 二、集合中的 " - " 操作符重载
- 三、完整代码示例
一、集合中的 " + " 操作符重载
对集合使用 " + " 运算符 , 其作用相当于 调用 plus 方法 , " + " 符号两侧的值就是 plus 方法的 222 个参数值 ; 这两个参数 ,
- 第一个参数是 Collection<T> left , 这是 原集合 , " + " 运算符左侧的元素 ;
- 第二个参数是 T right , 这是集合中 要添加的元素 , " + " 运算符右侧的元素 ;
plus 方法的 返回值是一个新的集合 , 原集合不发生改变 , 新集合中 , 会在原集合的基础上 , 增加了 " + " 操作符后面的元素 ;
集合的 plus 函数原型 :
/*** 将集合创建为集合和对象的并集。* 如果集合是集合,则返回的集合将是集合,否则将是列表。* 此操作将始终为结果创建新对象,而操作数保持不变。* <pre class="groovyTestCase">assert [1,2,3] == [1,2] + 3</pre>** @param left 集合* @param right 要添加的元素对象* @return 新的集合 , 该集合中有新的的添加元素* @since 1.5.0*/public static <T> Collection<T> plus(Collection<T> left, T right) {// 创建新集合 , 大小是 原集合大小 + 1final Collection<T> answer = cloneSimilarCollection(left, left.size() + 1);answer.add(right);return answer;}代码示例 :
// I. 集合的 " + " 操作符重载// 操作符重载 " + " 操作符相当于调用 plus 方法def list2 = list + "4"// 打印 [1, 2, 3]println list// 打印 [1, 2, 3, 4]println list2执行结果 :
[1, 2, 3] [1, 2, 3, 4]二、集合中的 " - " 操作符重载
对集合使用 " - " 运算符 , 其作用相当于 调用 minus 方法 , " - " 符号两侧的值就是 minus 方法的 222 个参数值 ; 这两个参数 ,
- 第一个参数是 List<T> self , 这是 原集合 , " - " 运算符左侧的元素 ;
- 第二个参数是 Object removeMe , 这是集合中 要删除的元素 , " - " 运算符右侧的元素 ;
minus 方法的 返回值是一个新的集合 , 原集合不发生改变 , 新集合中 , 会在原集合的基础上 , 删除了 " - " 操作符后面的元素 ;
集合的 minus 方法原型 :
/*** 创建一个新列表,该列表由第一个列表中的元素减去要删除的给定元素的每个匹配项组成。* <pre class="groovyTestCase">assert ["a", 5, 5, true] - 5 == ["a", true]</pre>** @param self List 集合对象* @param removeMe 从集合中要删除的元素* @return 返回一个新集合 , 该集合中的指定元素已经被删除了* @since 1.0*/public static <T> List<T> minus(List<T> self, Object removeMe) {List<T> ansList = new ArrayList<T>();for (T t : self) {if (!coercedEquals(t, removeMe)) ansList.add(t);}return ansList;}代码示例 :
// II. 集合的 " - " 操作符重载// 操作符重载 " - " 操作符相当于调用 minus 方法list2 = list - "2"// 打印 [1, 2, 3]println list// 打印 [1, 3]println list2执行结果 :
[1, 2, 3] [1, 3]三、完整代码示例
完整代码示例 :
class Test {static void main(args) {// 为 ArrayList 设置初始值def list = ["1", "2", "3"]// I. 集合的 " + " 操作符重载// 操作符重载 " + " 操作符相当于调用 plus 方法def list2 = list + "4"// 打印 [1, 2, 3]println list// 打印 [1, 2, 3, 4]println list2// II. 集合的 " - " 操作符重载// 操作符重载 " - " 操作符相当于调用 minus 方法list2 = list - "2"// 打印 [1, 2, 3]println list// 打印 [1, 3]println list2} }执行结果 :
[1, 2, 3] [1, 2, 3, 4] [1, 2, 3] [1, 3]总结
以上是生活随笔为你收集整理的【Groovy】集合遍历 ( 操作符重载 | 集合中的 “ + “ 操作符重载 | 集合中的 “ - “ 操作符重载 | 代码示例 )的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 【Groovy】集合遍历 ( 使用集合的
- 下一篇: 【Groovy】集合遍历 ( 操作符重载