Соглашение о массиве Java: String [] args против String args []
В настоящее время я преподаю студентам в качестве инструкторов по программированию. Я'мы сказали им, что они могут найти большинство соглашений вСоглашения о коде Oracle.
В моем последнем уроке студент спросил:
public static void main(String args[])
или же
public static void main(String[] args)
написано по соглашению или если есть разница. Я никогда не видел первую версию раньше, поэтому яЯ очень уверен, что второй является конвенцией. Но я неУ меня нет источника для этого.
Можете ли вы дать мне источник (желательно из оракула, как страница, которую ясвязанное выше), которое проясняет, что из того и другого является соглашением
Эквивалентность обоих выраженийЯ знаю, что оба выражения эквивалентны:
JLS 7, п. 292 состояния:
An array type is written as the name of an element type followed
by some number of empty pairs of square brackets [].
но и на с. 293:
The [] may appear as part of the type at the beginning of the declaration,
or as part of the declarator for a particular variable, or both.
For example:
byte[] rowvector, colvector, matrix[];
This declaration is equivalent to:
byte rowvector[], colvector[], matrix[][];
Но это неТ помощь для конвенции-вопрос.
Таким образом, они идентичны (не спецификации, но вотисточник). Они выдают один и тот же байт-код в небольшом примере, поэтому яЯ очень уверен, что они также идентичны в практике.