Java Collection Equal equalContent(final Collection a, final Collection b)

Here you can find the source of equalContent(final Collection a, final Collection b)

Description

If both are null will throw an error.

License

Open Source License

Declaration

static public final boolean equalContent(final Collection<?> a, final Collection<?> b) 

Method Source Code

//package com.java2s;
/**/* ww  w  .jav  a2 s.c o m*/
    
TrakEM2 plugin for ImageJ(C).
Copyright (C) 2005-2009 Albert Cardona and Rodney Douglas.
    
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation (http://www.gnu.org/licenses/gpl.txt )
    
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
    
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
    
You may contact Albert Cardona at acardona at ini.phys.ethz.ch
Institute of Neuroinformatics, University of Zurich / ETH, Switzerland.
    
*/

import java.util.Collection;

import java.util.Iterator;

import java.util.Map;

public class Main {
    /** If both are null will throw an error. */
    static public final boolean equalContent(final Collection<?> a, final Collection<?> b) {
        if ((null == a && null != b) || (null != b && null == b))
            return false;
        if (a.size() != b.size())
            return false;
        for (Iterator<?> ia = a.iterator(), ib = b.iterator(); ia.hasNext();) {
            if (!ia.next().equals(ib.next()))
                return false;
        }
        return true;
    }

    /** If both are null will throw an error. */
    static public final boolean equalContent(final Map<?, ?> a, final Map<?, ?> b) {
        if ((null == a && null != b) || (null != b && null == b))
            return false;
        if (a.size() != b.size())
            return false;
        for (final Map.Entry<?, ?> e : a.entrySet()) {
            final Object ob = b.get(e.getKey());
            if (null != ob && !ob.equals(e.getValue()))
                return false;
            if (null != e.getValue() && !e.getValue().equals(ob))
                return false;
            // if both are null that's ok
        }
        return true;
    }
}

Related

  1. contentEquals(Collection list1, Collection list2)
  2. equal(Collection i1, Collection i2)
  3. equal(Collection col1, Collection col2)
  4. equalCollection(Collection c1, Collection c2)
  5. equalContent(Collection col1, Collection col2)
  6. equals(Collection c1, Collection c2)
  7. equals(Collection collection1, Collection collection2)
  8. equals(Collection collection1, Collection collection2)
  9. equals(Collection a, Collection b, boolean ordered)