question: public double nextUniform ( double lower , double upper ) { if ( upper <= lower ) { throw new MathIllegalArgumentException ( LocalizedCoreFormats . LOWER_BOUND_NOT_BELOW_UPPER_BOUND , lower , upper ) ; } if ( Double . isInfinite ( lower ) || Double . isInfinite ( upper ) ) { throw new MathIllegalArgumentException ( LocalizedCoreFormats . INFINITE_BOUND ) ; } if ( Double . isNaN ( lower ) || Double . isNaN ( upper ) ) { throw new MathIllegalArgumentException ( LocalizedCoreFormats . NAN_NOT_ALLOWED ) ; } final double u = randomGenerator . nextDouble ( ) ; return u * upper + ( 1 - u ) * lower ; }
target:  Returns a double value uniformly distributed over [lower, upper]