org.sonar.l10n.java.rules.squid.S2154.html Maven / Gradle / Ivy
The newest version!
If wrapped primitive values (e.g. Integers
and Floats
) are used in a ternary operator (e.g. a?b:c
), both values will be unboxed and coerced to a common type, potentially leading to unexpected results. To avoid this, add an explicit cast to a compatible type.
Noncompliant Code Example
Integer i = 123456789;
Float f = 1.0f;
Number n = condition ? i : f; // Noncompliant; i is coerced to float. n = 1.23456792E8
Compliant Solution
Integer i = 123456789;
Float f = 1.0f;
Number n = condition ? (Number) i : f; // n = 123456789
© 2015 - 2025 Weber Informatics LLC | Privacy Policy