Java Array Hash Code arrayHashCode(Object array[])

Here you can find the source of arrayHashCode(Object array[])

Description

Calling hashCode on an array does not go into the items in the array, as would be done for a List.

License

LGPL

Declaration

public static int arrayHashCode(Object array[]) 

Method Source Code

//package com.java2s;
/*/* w w w .  ja v  a2  s.  c om*/
Strandz LGPL - an API that matches the user to the data.
Copyright (C) 2007 Chris Murphy
    
Strandz LGPL is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
    
This library 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
Lesser General Public License for more details.
    
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
    
    
The authors can be contacted via www.strandz.org
*/

public class Main {
    /**
     * Calling hashCode on an array does not go into the items in the array,
     * as would be done for a List.
     */
    public static int arrayHashCode(Object array[]) {
        int result = 0;
        if (array != null) {
            for (int i = 0; i < array.length; i++) {
                Object obj = array[i];
                result += obj.hashCode();
            }
        }
        // Err.pr( "arrayHashCode " + array + "returning hashCode of " + result);
        return result;
    }

    public static int hashCode(int result, Object obj) {
        result = 37 * result + (obj == null ? 0 : obj.hashCode());
        return result;
    }

    public static int hashCode(int result, int obj) {
        result = 37 * result + obj;
        return result;
    }

    public static int hashCode(int result, boolean b) {
        result = 37;
        if (b) {
            result++;
        }
        return result;
    }
}

Related

  1. arrayHashCode(Object[] arr)
  2. arrayHashCode(Object[] arr)
  3. arrayHashCode(Object[] objects)
  4. byteArrayHashCode(final byte[] array)