java - 参数为 'name' 的数组创建方法 : Scope Error

标签 java arrays methods scope

我正在为一个类项目创建一些辅助方法。我想要创建的方法之一是简单地创建一个 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/

相关文章:

r - 在 R 中,如何在另一个包中的类上设置通用方法?

java - Redisson - 队列容量/文档

java - 如何提高许多数据库插入的性能?

java - java的代码生成器可用于maven吗?

java - 如何更正正则表达式以在不区分大小写的情况下找到精确的单词匹配?

arrays - 如何将数组传递给 bash shell 脚本?

sql - 将文本转换为数组 - PostgreSQL

IOS方法调用

java - 该程序未记录第一个数组,设置为空 - Java

java - 打印 1-20 的数组,跨度为 10 的两个方法代码