sirven que programa parentesis para los llaves expresiones ejemplos corchetes analizador java arrays function

que - Definición de la función Java con sintaxis de corchetes



programa analizador de parentesis, llaves y corchetes "(){}[] " c++ (1)

En JLS Sec 8.4 :

MethodDeclarator: Identifier ( [FormalParameterList] ) [Dims]

...

La declaración de un método que devuelve una matriz puede colocar algunos o todos los pares de corchetes que denotan el tipo de matriz después de la lista formal de parámetros. Esta sintaxis es compatible con la compatibilidad con versiones anteriores del lenguaje de programación Java. Se recomienda encarecidamente que esta sintaxis no se use en el nuevo código.

Estaba buscando en la fuente de ByteArrayOutputStream , y vi esta función:

public synchronized byte toByteArray()[] { return Arrays.copyOf(buf, count); }

¿Dónde se documenta esta sintaxis? Me refiero a la [] delante de la función. ¿Es esto lo mismo que al declarar una matriz regular donde el corchete puede ir después del nombre de la matriz o antes, pero en este caso, el corchete puede ir después del nombre de la función?

String[] args;

Vs

String args[];

Edición: 2018-05-22

Encontré aún más usos de esta sintaxis loca aquí: 10 cosas que no sabías sobre Java

El # 3 es donde hacen mención de todas las formas en que se puede explotar la sintaxis anterior