private static int maxBucketsPerElement(long numElements){
  numElements=Math.max(1,numElements);
  double v=(Integer.MAX_VALUE - EXCESS) / (double)numElements;
  if (v < 1.0) {
    throw new UnsupportedOperationException("Cannot compute probabilities for " + numElements + " elements.");
  }
  return Math.min(BloomCalculations.probs.length - 1,(int)v);
}

private static int maxBucketsPerElement ( long numElements ) { numElements = Math . max ( 1 , numElements ) ; double v = ( Integer . MAX_VALUE - EXCESS ) / ( double ) numElements ; if ( v < 1.0 ) { throw new UnsupportedOperationException ( "Cannot compute probabilities for " + numElements + " elements." ) ; } return Math . min ( BloomCalculations . probs . length - 1 , ( int ) v ) ; }
calculates the maximum number of buckets per element that this implementation can support . crucially , it will lower the bucket count if necessary to meet bitset ' s size restrictions .
