Инициализировать массив в конструкторе класса - PullRequest
1 голос
/ 13 ноября 2011

Я могу легко создать массив следующим образом:

int[] someArray = {1,2,3}

и это приятно. Теперь допустим, что я хочу создать новый объект SomeClass, а конструктор принимает в качестве параметров несколько массивов. Почему я не могу сделать следующее?

SomeClass someObject = new SomeClass ({1,2,3},{'h','i'})

Как я могу инициализировать массив в конструкторе?

Ответы [ 3 ]

8 голосов
/ 13 ноября 2011

Вы можете сделать

new SomeClass (new int[] {1,2,3}, new char[] {'h','i'})
2 голосов
/ 13 ноября 2011

Причина в том, что просто есть специальный синтаксический сахар для обработки этого:

int[] someArray = {1,2,3};

как означающий это:

int[] someArray = new int[] {1,2,3};

и нет специального синтаксического сахара для других мест, где1007 * может произойти.

2 голосов
/ 13 ноября 2011

Вы должны сделать:

SomeClass someObject = new SomeClass (new int[] {1,2,3}, new char[] {'h','i'})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...