让Java方法调用处理程序执行时传递的varargs

问题描述

我有这个Java方法调用

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

这是一个示例调用。程序执行时可以传递任意数量的args,我希望我的方法调用能够适应任何长度。怎么做?

我的方法声明是这样的:

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

解决方法

最简单的方法可能是使用Arrays.copyOfRange将部分数组传递给您的方法:

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