question: @ Override public int hashCode ( ) { if ( hash == 0 ) { int result = 17 ; result = 37 * result + range . hashCode ( ) ; long bitsWeight = Double . doubleToLongBits ( weight ) ; result = 37 * result + ( int ) ( bitsWeight ^ ( bitsWeight > > > 32 ) ) ; hash = result ; } return hash ; }
target:  Returns a hash code value for the object.