question: private static int memberValueHashCode ( Object value ) { Class < ? > type = value . getClass ( ) ; if ( ! type . isArray ( ) ) return value . hashCode ( ) ; if ( type == byte [ ] . class ) return Arrays . hashCode ( ( byte [ ] ) value ) ; if ( type == char [ ] . class ) return Arrays . hashCode ( ( char [ ] ) value ) ; if ( type == double [ ] . class ) return Arrays . hashCode ( ( double [ ] ) value ) ; if ( type == float [ ] . class ) return Arrays . hashCode ( ( float [ ] ) value ) ; if ( type == int [ ] . class ) return Arrays . hashCode ( ( int [ ] ) value ) ; if ( type == long [ ] . class ) return Arrays . hashCode ( ( long [ ] ) value ) ; if ( type == short [ ] . class ) return Arrays . hashCode ( ( short [ ] ) value ) ; if ( type == boolean [ ] . class ) return Arrays . hashCode ( ( boolean [ ] ) value ) ; return Arrays . hashCode ( ( Object [ ] ) value ) ; }
target:  Computes hashCode of a member value (in "dynamic proxy return form")