最近调用java api遇到个很简单的小问题,贴图如下
public void setTriggers(Trigger... triggers) {
this.triggers = Arrays.asList(triggers);
}
java使用省略号代替多参数(参数类型... 参数名),也就是最少传一个,上限不限制,J2SE 1.5开始提供了这种机制。
业务场景呢,是需要根据条件动态传入triggers,每次传入的triggers不保证一致,左思右想想不到怎么扔给这个方法,然后强大的百度了为我解答了,...形参也可以接收一个数组类型,于是
List<Trigger> triggers = new ArrayList<>();
triggers.add(trigger1);
triggers.add(trigger2);
Trigger[] ts = triggers.toArray(new Trigger[0]);
setTriggers(ts);