== Why is this an issue? Creating temporary primitive wrapper objects only for `String` conversion or the use of the `compareTo()` method is inefficient. Instead, the static `toString()` or `compare()` method of the primitive wrapper class should be used. === Noncompliant code example [source,java,diff-id=1,diff-type=noncompliant] ---- private int isZero(int value){ return Integer.valueOf(value).compareTo(0); // Noncompliant } private String convert(int value){ return Integer.valueOf(value).toString(); // Noncompliant } ---- === Compliant solution [source,java,diff-id=1,diff-type=compliant] ---- private int isZero(int value){ return Integer.compare(value, 0); // Compliant } private String convert(int value){ return Integer.toString(value); // Compliant } ---- ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) === Message Call the static method {wrapperClass}.[toString(...)|compare(...)} instead of instantiating a temporary object. ''' == Comments And Links (visible only on this page) === on 29 Jul 2013, 15:21:20 Freddy Mallet wrote: Is implemented by \http://jira.codehaus.org/browse/SONARJAVA-246 === on 16 Aug 2013, 14:29:29 Dinesh Bolkensteyn wrote: \[~freddy.mallet] You can't use {primitiveWrapperClass} in the rule description ;-) endif::env-github,rspecator-view[]