我正在为一个类项目创建一些辅助方法。我想要创建的方法之一是简单地创建一个 int 类型的数组,称为“name”,大小为“size”。问题出现在我尝试使用“name”参数创建数组的方法主体中。
public int[] createArray(String name, int size){
int[] name = new int[size];
}
除了获取“变量‘名称’已在范围中定义”之外。错误,我认为问题是我不能在数组的构造中使用变量。如果是这样的话,我不应该在这里使用“字符串名称”作为参数吗?我可以做某种解析/转换吗?最后,我必须使用/执行什么操作才能将方法调用中的参数传递到“int[] _____ = new int[size];”?
我可能只会在 main 方法中创建我通常需要的 2 个数组,但我想了解我做错了什么。
最好,
科里
最佳答案
重命名变量name
in
int[] name = new int[size];
到
int[] otherName = new int[size];
它应该可以正常工作。由于 String name
用作方法的参数,因此作用域中存在另一个同名变量。
此外,如果您想使用参数来实际命名数组变量,那么您可能会尝试在其运行时修改源代码,但您不能这样做。也就是说,变量String name
在该方法中似乎不再有用。
关于java - 参数为 'name' 的数组创建方法 : Scope Error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45870049/