The list of methods to do Clamp are organized into topic(s).
T
clamp(T n, T l, T h) clamp
return (n.doubleValue() > h.doubleValue() ? h : (n.doubleValue() < l.doubleValue() ? l : n));
T
clamp(T value, T minimum, T maximum) Clamps a Number
if (minimum.doubleValue() > maximum.doubleValue()) {
T temp = minimum;
minimum = maximum;
maximum = temp;
if (value.doubleValue() > maximum.doubleValue())
value = maximum;
if (value.doubleValue() < minimum.doubleValue())
...
long
clampAdd(long lhs, long rhs) Add the supplied arguments and handle overflow by clamping the resulting sum to Long.MinValue if the sum would have been less than Long.MinValue or Long.MaxValue if the sum would have been greater than Long.MaxValue .
long sum = lhs + rhs;
if ((~(lhs ^ rhs) & (lhs ^ sum)) < 0) {
if (lhs >= 0) {
return Long.MAX_VALUE;
} else {
return Long.MIN_VALUE;
return sum;