我在超类上有以下方法:
public void method(Example... examples) {
for (Example e : examples) {
e.doSomething();
}
}
这是对子类的调用:
super.method(examples[0], examples[1], examples[2], examples[3], examples[4], examples[5], examples[6], examples[7], examples[8], examples[9], examples[10]);
是否有更简单的方法来传递元素?像super.method(例如[0 - > 10])?
我无法将整个数组(super.method(examples))传递给方法。
谢谢。
答案 0 :(得分:3)
是的,您可以使用Arrays.copyOf(T[], int)
之类的
super.method(Arrays.copyOf(examples, 11));
答案 1 :(得分:2)
您可以使用Arrays.copyOfRange(T[], int from, int to)
方法
super.method(Arrays.copyOfRange(examples, 1, 11));
以下是一个例子。
package com.foo;
import java.util.Arrays;
public class TestVarArgs {
public void test(String...strings){
}
public static void main(String[] args) {
new TestVarArgs().test(Arrays.copyOfRange(args, 1, 11));
}
}