== Why is this an issue? Placing the array designators `[]` after the type helps maintain backward compatibility with older versions of the Java SE platform. This syntax contributes to better readability as it becomes easier to distinguish between array types and non-array types. It helps convey the intention of the method to both the developer implementing it and the developer using it. === Noncompliant code example [source,java,diff-id=1,diff-type=noncompliant] ---- public class Cube { private int magicNumbers[] = { 42 }; // Noncompliant public int getVector()[] { /* ... */ } // Noncompliant public int[] getMatrix()[] { /* ... */ } // Noncompliant } ---- === Compliant solution [source,java,diff-id=1,diff-type=compliant] ---- public class Cube { private int[] magicNumbers = { 42 }; // Compliant public int[] getVector() { /* ... */ } // Compliant public int[][] getMatrix() { /* ... */ } // Compliant } ---- == Documentation * https://docs.oracle.com/javase/specs/jls/se20/html/jls-10.html[Oracle Java Language Specification] - Arrays ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) === Message Move the array designators "[]" to the end of the return type. ''' == Comments And Links (visible only on this page) === relates to: S1197 === on 18 Aug 2013, 14:42:53 Freddy Mallet wrote: Is implemented by \http://jira.codehaus.org/browse/SONARJAVA-294 endif::env-github,rspecator-view[]