两个List集合取相同重复数据的方法

以下是两个list取重复的代码:

public static void main(String[] args) {
 List<Integer> list1 = new ArrayList<Integer>();
 for (int i = 0; i < 5; i++) {
  list1.add(i);
 }
 List<Integer> list2 = new ArrayList<Integer>();
 for (int i = 2; i < 8; i++) {
  list2.add(i);
 }
 System.out.println("List1的数据:" + list1);
 System.out.println("List2的数据:" + list2);
 System.out.println("交集为" + getRepetition(list1, list2));
 }
 /**
 * 两个list取重复
 * @param list1
 * @param list2
 * @return
 */
 public static List<Integer> getRepetition(List<Integer> list1,
  List<Integer> list2) {
 List<Integer> result = new ArrayList<Integer>();
 for (Integer integer : list2) {//遍历list1
  if (list1.contains(integer)) {//如果存在这个数
  result.add(integer);//放进一个list里面,这个list就是交集
  }
 }
 return result;
 }

当类型为引用类型也是可以的,因为list.contains内部实现为equals() , 所以两个String类型的list也是可以用这个方法的

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接

(0)

相关推荐

  • Java判断List中有无重复元素的方法

    Talk is cheap, show me the code: import java.util.ArrayList; import java.util.HashSet; import java.util.List; /** * 通过简单的代码判断List中是否包含相同元素 * @author wei 2017年7月10日 下午8:34:47 */ public class ListHaveRepeat { public static void main(String[] args) { Li

  • android中ListView多次刷新重复执行getView的解决方法

    以前倒是没有注意listview的getView会重复执行多次,这次因为布局比较复杂,所以在测试的时候去断点跟踪,发现同一条数据不断的重复执行.觉得很奇怪,于是上网搜索了一下.网上的解释基本一致,就是ListView布局时height和width都不是fill_parent,导致不断计算高度,不断刷新.或者说它的父容器没有设置成fill_parent. 可以布局太复杂的情况下,全部按照fill_parent去调整不现实.所以想了另一种方案,就是动态固定高度. 在程序运行后,固定ListView的

  • list集合去除重复对象的实现

    对象重复是指对象里面的变量的值都相等,并不定是地址.list集合存储的类型是基础类型还比较好办,直接把list集合转换成set集合就会自动去除. 当set集合存储的是对象类型时,需要在对象的实体类里面重写public boolean equals(Object obj) {} 和 public int hashCode() {} 两个方法. 实体类 public class Student { public String id; public String name; public Studen

  • python生成不重复随机数和对list乱序的解决方法

    andom.sample(list, n)即是从list中随机选取n个不同的元素 # -*- coding: utf-8 -*- import random # 从一个list中随机挑选5个 list = [12, 23, 13, 14, 78, 234, 123, 12345] randomlist = random.sample(list, 5) print randomlist # 在range(10)中随机生成5个不重复的数,可以作为随机下标集合,然后到list中取数 len = lis

  • 2种Java删除ArrayList中的重复元素的方法

    这篇文章将给出两种从ArrayList中删除重复元素的方法,分别是使用HashSet和LinkedHashSet. ArrayList是Java中最常用的集合类型之一.它允许灵活添加多个null元素,重复的元素,并保持元素的插入顺序.在编码时我们经常会遇到那种必须从已建成的ArrayList中删除重复元素的要求. 方法1:使用HashSet删除ArrayList中重复的元素 在该方法中,我们使用HashSet来删除重复的元素.如你所知,HashSet不允许有重复的元素.我们使用HashSet的这

  • Android中ListView异步加载图片错位、重复、闪烁问题分析及解决方案

    Android ListView异步加载图片错位.重复.闪烁分析以及解决方案,具体问题分析以及解决方案请看下文. 我们在使用ListView异步加载图片的时候,在快速滑动或者网络不好的情况下,会出现图片错位.重复.闪烁等问题,其实这些问题总结起来就是一个问题,我们需要对这些问题进行ListView的优化. 比如ListView上有100个Item,一屏只显示10个Item,我们知道getView()中convertView是用来复用View对象的,因为一个Item的对应一个View对象,而Ima

  • java 查找list中重复数据实例详解

    java 查找list中重复数据实例详解 需求: 查找一个List集合中所有重复的数据,重复的数据可能不止一堆,比如:aa, bb, aa, bb, cc , dd, aa这样的数据.如果有重复数据,则给这些重复数据加上编号,上述数据改为:aa1, bb1, aa2, bb2, cc, dd. 算法如下: public static void same(List<String> list) { String [] indexArr ; Map<String, String> map

  • 获取python的list中含有重复值的index方法

    关于怎么获得,我想其实网上有很多答案. list.index( )获得值的索引值,但是如果list中含有的值一样,例如含有两个11,22,这样每次获得的都是第一个值的位置. 那么怎么去解决这个问题呢? 下面的程序对这个问题做了一定的解答 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Author : SundayCoder-俊勇 # @File : listlearn.py # 怎么获得list中的相同值的索引值 # 请看下列程序 s = [1

  • Java中ArrayList去除重复元素(包括字符串和自定义对象)

    1.去除重复字符串 package com.online.msym; import java.util.ArrayList; import java.util.Iterator; @SuppressWarnings({ "rawtypes", "unchecked" }) public class Demo1_ArrayList { public static void main(String[] args) { ArrayList list = new Array

  • java正则表达式实现提取需要的字符并放入数组【ArrayList数组去重复功能】

    本文实例讲述了java正则表达式实现提取需要的字符并放入数组.分享给大家供大家参考,具体如下: 这里演示Java正则表达式提取需要的字符并放入数组,即ArrayList数组去重复功能. 具体代码如下: package com.test.tool; import java.util.ArrayList; import java.util.HashSet; import java.util.regex.*; public class MatchTest { public static void ma

随机推荐