java怎样把两个list里边相同的数据取出

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java怎样把两个list里边相同的数据取出相关的知识,希望对你有一定的参考价值。

比如 一个 list1 里边有1,2,3,4,5,6 list2里边有3,4,5,7,8,9 怎样把两个list里边相同的 3,4,5 取出 用LIST 返回 求代码

List里面有一个“contains”的方法,可以知道list里面是否存在某个值:

import java.util.ArrayList;
import java.util.List;

public class I 

public static void main(String[] args) 

List<Integer> list1 = new ArrayList<Integer>();
for (int i = 0; i < 7; i++) 
list1.add(i);

List<Integer> list2 = new ArrayList<Integer>();
for (int i = 3; i < 10; i++) 
list2.add(i);

System.out.println("List1:" + list1);
System.out.println("List2:" + list2);
System.out.println("交集为" + getIntersection(list1, list2));



public static List<Integer> getIntersection(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;

测试结果:

参考技术A List l=new arrayList();
for(int i=0;i<list1.size();i++)
for(int j=1;j,list2.size();j++)

if(list1.get(i)==list2.get(j)

l.add(list1.get(i));
break;





return l;本回答被提问者采纳
参考技术B package com.baidu.test;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/**
 * Created by zhou2003737 on 2014/11/8.
 */
public class ListTest 
    public static ArrayList findSame(List<Integer> list_frist,List<Integer> list_second)
            List list = new ArrayList();
            for(int i :list_frist)
                for (int j :list_second)
                    if(i == j)
                        list.add(i);
                    
                
            
        return (ArrayList) list;
    
    public static void  main(String [] args)
        Integer[] a = new Integer[]1,2,3,4,5,6;
        Integer[] b =new Integer[]3,4,5,7,8,9;
       List<Integer> result =  ListTest.findSame(Arrays.asList(a),Arrays.asList(b));
        for(Integer i :result)
            System.out.println(i);
        
    

以上是关于java怎样把两个list里边相同的数据取出的主要内容,如果未能解决你的问题,请参考以下文章

java for循环 怎样把一个list里相同的数据放到一起

两个list, List<User>, List<People>,都有一个时间字段,怎样把两个List内容按时间排序放到一个新的List

Java数组怎样按条件分离为N个小数组?

怎样从java集合类set中取出数据

java 对比两个list并取值

怎样从java集合类set中取出数据?