Java Array Equal equals(Object[] objs1, Object[] objs2)

Here you can find the source of equals(Object[] objs1, Object[] objs2)

Description

equals

License

Open Source License

Declaration

public static boolean equals(Object[] objs1, Object[] objs2) 

Method Source Code

//package com.java2s;
//License from project: Open Source License 

import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;

import java.util.Set;

public class Main {
    public static boolean equals(Object[] objs1, Object[] objs2) {
        if ((objs1 == null) && (objs2 == null))
            return true;
        if ((objs1 == null) || (objs2 == null))
            return false;
        if (objs1.length != objs2.length)
            return false;
        Set<Object> set1 = toSet(objs1);
        Set<Object> set2 = toSet(objs2);
        set1.removeAll(set2);/*from ww  w.  j  a va  2 s .c om*/
        return set1.size() == 0;
    }

    /**
     * @param selection
     * @return
     */
    public static Set<Object> toSet(Object[] objs) {
        Set<Object> ret = new HashSet<Object>();
        if (objs != null)
            for (int i = 0; i < objs.length; i++)
                ret.add(objs[i]);
        return ret;
    }

    public static void removeAll(Collection<Object> ret, Object[] elements) {
        if (elements != null)
            for (int i = 0; i < elements.length; i++)
                ret.remove(elements[i]);
    }

    public static void removeAll(Collection<Object> ret, Iterator<Object> elements) {
        if (elements != null)
            while (elements.hasNext())
                ret.remove(elements.next());
    }
}

Related

  1. equals(Map a, Map b)
  2. equals(Map map1, Map map2)
  3. equals(Object array1, Object array2)
  4. equals(Object array1, Object array2)
  5. equals(Object array1, Object array2)
  6. equals(String[] fullSet, String[] subSet)
  7. equals(T[] array1, T[] array2)
  8. equals3(double[][][] arr1, double[][][] arr2)
  9. equalsAny(T element, T[] array)