比如 一个 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;
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 推荐于2017-09-12
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;本回答被提问者采纳
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;本回答被提问者采纳
第2个回答 2014-11-08
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);
}
}
}
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);
}
}
}