Java 示例 - 从数组中查找公共元素

  • 问题描述

    如何从数组中找到公共元素?
  • 解决方案

    下面的例子展示了如何从两个数组中找到公共元素并将它们存储在一个数组中。
    
    import java.util.ArrayList;
    public class NewClass {
       public static void main(String[] args) {
          ArrayList objArray = new ArrayList();
          ArrayList objArray2 = new ArrayList();
          objArray2.add(0,"common1");
          objArray2.add(1,"common2");
          objArray2.add(2,"notcommon");
          objArray2.add(3,"notcommon1");
          objArray.add(0,"common1");
          objArray.add(1,"common2");
          objArray.add(2,"notcommon2");
          System.out.println("Array elements of array1"+objArray);
          System.out.println("Array elements of array2"+objArray2);
          objArray.retainAll(objArray2);
          System.out.println("Array1 after retaining common elements of array2 & array1"+objArray);
       }
    }
    
  • 结果

    上面的代码示例将产生以下结果。
    
    Array elements of array1[common1, common2, notcommon2]
    Array elements of array2[common1, common2, notcommon,
    notcommon1]
    Array1 after retaining common elements of array2 & array1
    [common1, common2]
    
    从数组中查找公共元素的另一个示例
    
    public class HelloWorld {
       public static void main(String a[]) {
          int[] arr1 = {4,7,3,9,2};
          int[] arr2 = {3,2,12,9,40,32,4};
          
          for(int i = 0;i < arr1.length; i++) {
             for(int j = 0; j < arr2.length; j++) {
                if(arr1[i] == arr2[j]) { 
                   System.out.println(arr1[i]);
                } 
             } 
          }
       }
    }
    
    上面的代码示例将产生以下结果。
    
    4 
    3 
    9 
    2