Date/Time Einsteiger

Einen Wert mit einem einzigen klaren Aufruf auf einen Bereich begrenzen.

✕ Java 8
// Clamp value between min and max
int clamped =
    Math.min(Math.max(value, 0), 100);
// or: min and max order confusion
✓ Java 21+
int clamped =
    Math.clamp(value, 0, 100);
// value constrained to [0, 100]
Problem mit diesem Code entdeckt? Sag uns Bescheid.
📖

Selbstdokumentierend

clamp(value, min, max) ist eindeutig.

🛡️

Weniger fehleranfällig

Kein versehentliches Vertauschen der Reihenfolge von min und max mehr.

🎯

Alle numerischen Typen

Funktioniert mit int, long, float und double.

Alter Ansatz
Verschachteltes min/max
Moderner Ansatz
Math.clamp()
Seit JDK
21
Schwierigkeitsgrad
Einsteiger
Math.clamp()
Verfügbar

Weitgehend verfügbar seit JDK 21 LTS (September 2023)

Math.clamp(value, min, max) beschränkt einen Wert auf den Bereich [min, max]. Klarer als verschachteltes Math.min/Math.max und verfügbar für int, long, float und double.

Teilen 𝕏 🦋 in