Имеет ли вызов метода Java дело с переменными значениями, переданными при выполнении программы

#java #variadic-functions #args

#java #переменные-функции #аргументы

Вопрос:

У меня есть этот вызов метода Java:

 csvOperations.readCsv(csvFile, templateId, args[2], args[3], args[4]);
  

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

Мое объявление метода выглядит следующим образом:

 public void readCsv(String csvFile, String templateId, String ... keyId)
  

Ответ №1:

Вероятно, самым простым подходом было бы использовать Arrays.copyOfRange для передачи частичного массива вашему методу:

 csvOperations.readCsv(csvFile, templateId, Arrays.copyOfRange(args, 2, arg.length));