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

比如一个list1里边有{1,2,3,4,5,6}list2里边有{3,4,5,7,8,9}怎样把两个list里边相同的{3,4,5}取出用LIST返回求代码... 比如 一个 list1 里边有{1,2,3,4,5,6} list2里边有{3,4,5,7,8,9} 怎样把两个list里边相同的 {3,4,5} 取出 用LIST 返回 求代码 展开
 我来答
kingkongzmc
推荐于2017-09-22 · TA获得超过884个赞
知道小有建树答主
回答量:913
采纳率:77%
帮助的人:281万
展开全部

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;
}
}

测试结果:

5599zqc
推荐于2017-09-12 · TA获得超过182个赞
知道答主
回答量:29
采纳率:0%
帮助的人:32.9万
展开全部
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;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhou2003737
2014-11-08 · TA获得超过1427个赞
知道小有建树答主
回答量:1082
采纳率:77%
帮助的人:391万
展开全部
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);
        }
    }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式