数组交集取反

方法一:

package com;

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

public class test2 {

 /**   * @param args   */  

public static void main(String[] args) {   

  String arr1[] = new String[] { "1", "2", "3", "4", "5", "6", "7", "8" };

  String arr2[] = new String[] { "4", "5", "6" };  

  List list = new ArrayList();   

  List list1 = new ArrayList();

  for (int i = 0; i < arr1.length; i++) {

      list1.add(arr1[i]);

  }

  for (int i = 0; i < arr1.length; i++) {

   for (int j = 0; j < arr2.length; j++) {

       if (arr1[i] == arr2[j]) {

         for (int j2 = 0; j2 < list1.size(); j2++) {

           if (list1.get(j2).equals(arr2[j]))

              list1.remove(j2);

      }

       }

   }

   }

   for (int i = 0; i < list1.size(); i++) {    System.out.println(list1.get(i));

   }

 }

}

方法二:

package com;

import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map;

public class test {

    public static void main(String[] args) {

     String[] arr1 = new String[] { "11111111111","22222222222","33333333333","44444444444"

                   ,"55555555555","77777777777","66666666666" };

     String[] arr2 = new String[] { "11111111111","22222222222","33333333333"};

     String result;

     result = init(arr1, arr2);

     System.out.println(result);

   }

   public static String init(String[] arr1, String[] arr2) {

    Map a = new HashMap();

    Map b = new HashMap();

    StringBuffer sb = new StringBuffer();

    List newList = new ArrayList();

    for (int i = 0; i < arr1.length; i++) {

      a.put(i, arr1[i]);

     }

    for (int i = 0; i < arr2.length; i++) {

      b.put(i, arr2[i]);

     }

     for (int i = 0; i < arr1.length; i++) {

     if (!b.containsValue(arr1[i])) {

       newList.add(arr1[i]);

      }

   }

    Collections.sort(newList);

    for (int i = 0; i < newList.size(); i++) {

      sb.append(newList.get(i));

      sb.append("_");   }

    return sb.toString();

   }

}

 

很久没写过这样的逻辑了。。。   感觉还不如当时入门的时候呢。。。

posted @ 2012-02-22 22:39  lovechina  Views(974)  Comments(0)    收藏  举报