jsc*_*man 0 java arrays collections type-conversion
我试图将原因数组转换ArrayList为原因并且我得到此编译器错误:
Type mismatch: cannot convert from ArrayList<Cause> to Cause[]
Run Code Online (Sandbox Code Playgroud)
这是实施:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class MyException extends Exception
private List<Cause> causes;
public MyException(Cause... causes) {
causes = new ArrayList<Cause>(Arrays.asList(causes));
}
}
Run Code Online (Sandbox Code Playgroud)
如何将我作为参数接收的原因转换为List成员?(我不想更改参数的类型).你有什么主意吗?
构造函数中赋值的左侧是参数,而不是字段.(也有一个{缺失).你可以通过添加this.:
public class MyException extends Exception {
private List<Cause> causes;
public MyException(Cause... causes) {
this.causes = new ArrayList<Cause>(Arrays.asList(causes));
}
}
Run Code Online (Sandbox Code Playgroud)