Я хотел бы создать метод инициализации для класса Java, который принимает 3 параметра:
Employee[] method( String[] employeeNames, Integer[] employeeAges, float[] employeeSalaries )
{
Employee myEmployees[] = new Employee[SIZE];// dont know what size is
for ( int count = 0; count < SIZE; count++)
{
myEmployees[count] = new Employee( employeeNames[count], employeeAges[count], employeeSalaries[count] );
}
return myEmployees;
}
Вы можете заметить, что этот код неверен. Переменная SIZE не определена. Моя проблема в том, что я хотел бы передать 3 массива, но я хотел бы знать, смогу ли я убедиться, что все три массива ВСЕ имеют одинаковый размер массива. Таким образом, цикл for не завершится с ошибкой, так как конструктор в цикле for использует все параметры массивов.
Возможно, в Java есть другая функция, которая может обеспечить решение моей проблемы. Я мог бы принять другой параметр под названием SIZE, который будет использоваться в цикле for, но это не решит мою проблему, если параметры 1 и 2 имеют размер 10, а третий параметр - массив размера 9.
Так что просто перефразировать, если мне не ясно. Как я могу обеспечить, чтобы все 3 аргумента были массивами, которые содержат одинаковое количество элементов?
Использование дополнительного параметра, который определяет размеры массива, не очень элегантно и немного грязно. Это также не решает проблему, когда параметры массива содержат массивы разных размеров.