java为什么我的数组“不能解析为变量”?
static void createArray(String function) {
int j = 10;
int results[];
results = new int[j+1];
for (int i = 0; i < j; i++) {
String stringI = Integer.toString(i);
int sum = 0;
function = function.replace("X",stringI);
String[] Pluses = function.split("\\+");
for (String multString: Pluses) {
String[] mults = multString.split("\\*");
int multAcc = 1;
for (String num: mults)
{
multAcc *= Integer.parseInt(num);
}
sum = sum + multAcc;
}
results[i] = sum;
}
}
public static void main (String args[]) {
您好,请原谅我的格式错误,这是我第一篇关于Stackoverflow的帖子
在编译时,我遇到了一个错误,即“结果无法解析为变量”。 代码应该创建一个数组,其中包含我在控制台中编写的函数的前10个值的整数值
Scanner myScanner = new Scanner(System.in);
System.out.println("Enter function");
String function = myScanner.nextLine();
createArray(function);
System.out.println(Arrays.ToString(results));
myScanner.close();
}
# 1 楼答案
乔普·艾根的回答是正确的。 但我认为你必须签出这个链接Scope of the variables in Java
# 2 楼答案
results是createArray()方法中的局部变量。要解决此问题,您可以执行以下任一操作: