gpt4 book ai didi

java - 如何将动态类数组传递给可变参数?

转载 作者:行者123 更新时间:2023-12-02 00:42:17 30 4
gpt4 key购买 nike

我想创建一个动态类数组以传递给可变参数。这可能吗?如果没有,动态创建普通类数组的最佳方法是什么?下面的代码给出了随后的错误。

代码 -

private void validate(Validator vt, Object form, BindingResult errors, Class<?>... c){
vt.validate(form, c);
}

private void validate(Type type, BindingResult errors){

Validator vt = new Validator();
List groups = new ArrayList();

if(form.isAvailable()){
groups.add(Available.class);
}
if(form.isNotAvailable()){
groups.add(NotAvailable.class);
}
if(groups.size()>0){
validate(vt, form, errors, groups.toArray());
}
}

错误 -

The method validate(Validator, Object, BindingResult, Class<?>...) is not applicable for the arguments (Validator, Field, BindingResult, Object[])

最佳答案

List.toArray() 返回的数组是一个 Object[],不能转换为 Class[]。尝试使用 List.toArray(T[]) 像这样:groups.toArray(new Class<?>[groups.size()]) ,这应该返回您正在查找的数组类型。

关于java - 如何将动态类数组传递给可变参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6035084/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com