public void update(double datum){
  double d=(datum == 0.0) ? 0.0 : datum;
  long[] data={Double.doubleToLongBits(d)};
  updateWithHash(hash(data,DEFAULT_UPDATE_SEED));
}

public void update ( double datum ) { double d = ( datum == 0.0 ) ? 0.0 : datum ; long [ ] data = { Double . doubleToLongBits ( d ) } ; updateWithHash ( hash ( data , DEFAULT_UPDATE_SEED ) ) ; }
present this sketch with the given double ( or float ) datum . the double will be converted to a long using double . doubletolongbits ( datum ) , which normalizes all nan values to a single nan representation . plus and minus zero will be normalized to plus zero . the special floating - point values nan and + / - infinity are treated as distinct .
