List list1=new ArrayList();
list1.add("1");
list1.add("2");
list1.add("3");
list1.add("4");
list1.add("5");
List list2=new ArrayList();
list2.add("4");
list2.add("5"); for (int i = 0; i < list1.size(); i++) {
for (int j = 0; j < list2.size(); j++) {

}
}
代码如上,求list1中的不被list2包含的元素就用循环嵌套做
答案是 1 2 3

解决方案 »

  1.   


    import java.util.ArrayList;
    import java.util.List;public class Test{ 
    public static void main(String[] args){ 
    List list1=new ArrayList();
    list1.add("1");
    list1.add("2");
    list1.add("3");
    list1.add("4");
    list1.add("5");
    List list2=new ArrayList();
    list2.add("4");
    list2.add("5");
        int count = 0;
    for (int i = 0; i < list1.size(); i++) {
        for (int j = 0; j < list2.size(); j++) {
         if(list1.get(i)!=list2.get(j)){
         count++;
         continue;
         }
        
         else
         break;
        }
        if(count == list2.size())
         System.out.println(list1.get(i));
        count = 0;
    }

      

  2.   

     if(list1.get(i).equals(list2.get(j))){
        list1.remove(i);
     }
      

  3.   

    List list1=new ArrayList();
            list1.add("1");
            list1.add("2");
            list1.add("3");
            list1.add("4");
            list1.add("5");
            List list2=new ArrayList();
            list2.add("4");
            list2.add("5");        for (int i = 0; i < list1.size(); i++) {
             boolean isRepeated=false;
                for (int j = 0; j < list2.size(); j++) {
                 if(list1.get(i).equals(list2.get(j))){
                 isRepeated=true;
                 }
        
                }
                if(!isRepeated){
                 System.out.println(list1.get(i));
                }
            }
      

  4.   

                    if(list1.get(i).equals(list2.get(j))){
                        isRepeated=true;
                        break;
                    }
        
      

  5.   

    yi jing jie jue le 
      

  6.   


    引用三楼的方法:
    public class aaa { public static void main(String[] args) {
    List<String> list1 = new ArrayList<String>();
    list1.add("1");
    list1.add("2");
    list1.add("3");
    list1.add("4");
    list1.add("5");
    List<String> list2 = new ArrayList<String>();
    list2.add("4");
    list2.add("5");
    for (Iterator<String> iter1 = list1.iterator(); iter1.hasNext();) {
    boolean isSame = false;
    String str1 = iter1.next();
    for (Iterator<String> iter2 = list2.iterator(); iter2.hasNext();) {
    if (str1.equals(iter2.next())) {
    isSame = true;
    break;
    } }
    if (!isSame) {
    System.out.println(str1);
    }
    } }
    }
      

  7.   

    new一个集合 嵌套循环里面判断 循环比较list1和list2里面的数值是否相等 如果相等就跳出本次循环 否则就添加到那个新的集合里面
      

  8.   

    package csdn8;import java.util.ArrayList;
    import java.util.List;public class TestContain { public static void main(String[] args) {
    List list1=new ArrayList();
            list1.add("1");
            list1.add("2");
            list1.add("3");
            list1.add("4");
            list1.add("5");
            List list2=new ArrayList();
            list2.add("4");
            list2.add("5");
            for (int i = 0; i < list1.size(); i++) {
             String temp = (String) list1.get(i);
                for (int j = 0; j < list2.size(); j++) {
                   if(list2.contains(temp)){
                    list1.remove(i);
                   }        
                }         
            }
            for (int j = 0; j < list1.size(); j++) {
             System.out.println(list1.get(j));
            }
    }
    }
      

  9.   

    其实是不是可以不用循环嵌套。感觉可以先把list2放到一个hashset里,然后再试图把list1放到那个hashset里,因为hashset里不能重复的值,所以可根据hashset的add方法的返回值来判断。
      

  10.   

    import java.util.*;
    public class TestArray {
    public static void main(String[] args) {
            List<String> list1=new ArrayList<String>();
            list1.add("1");
            list1.add("2");
            list1.add("3");
            list1.add("4");
            list1.add("5");
            List<String> list2=new ArrayList<String>();
            list2.add("4");
            list2.add("5");
            for (int i = 0; i < list1.size(); i++) {
                for (int j = 0; j < list2.size(); j++) {
                 if(list1.get(i)==list2.get(j)){
                 list1.remove(i);
                 }                
                }
            }
    System.out.println(list1);
    }
    }
      

  11.   

    如果不是字符串对象的话用equals
      

  12.   

    import java.util.*;public class TestHashSet { public static void main(String[] args) {
    List<String> list1 = new ArrayList<String>();
    list1.add("1");
    list1.add("2");
    list1.add("3");
    list1.add("4");
    list1.add("5");
    List<String> list2 = new ArrayList<String>();
    list2.add("4");
    list2.add("5"); Set<String> set = new HashSet<String>();
    set.addAll(list2);
    String[] s = new String[5];
    int i = 0;
    for (String ss : list1) {
    if (set.add(ss)) {
    s[i] = ss;
    System.out.println(s[i]);
    i++;
    }
    }
    }
    }
      

  13.   

    import java.util.*;public class TestHashSet { public static void main(String[] args) {
    List<String> list1 = new ArrayList<String>();
    list1.add("1");
    list1.add("2");
    list1.add("3");
    list1.add("4");
    list1.add("5");
    List<String> list2 = new ArrayList<String>();
    list2.add("4");
    list2.add("5"); Set<String> set = new HashSet<String>();
    set.addAll(list2);
    String[] s = new String[5];
    int i = 0;
    for (String ss : list1) {
    if (set.add(ss)) {
    s[i] = ss;
    System.out.println(s[i]);
    i++;
    }
    }
    }
    }
      

  14.   

    package com;import java.util.ArrayList;
    import java.util.HashSet;
    import java.util.Iterator;
    import java.util.List;
    import java.util.Set;public class Test {
    public static void main(String[] args) {
        List list1=new ArrayList();
            list1.add("1");
            list1.add("2");
            list1.add("3");
            list1.add("4");
            list1.add("5");
            List list2=new ArrayList();
            list2.add("4");
            list2.add("5");
            Set set = new HashSet();
            
            Iterator iter = list1.iterator();
            while(iter.hasNext()){
             set.add(iter.next());
            }
            iter = list2.iterator();
            while(iter.hasNext()){
             Object obj = iter.next();
             if(set.contains(obj)){
             set.remove(obj);
             }
            }
            iter = set.iterator();
            while(iter.hasNext()){
             System.out.println(iter.next());
            } }}没有用循环的方法,见笑了