为什么我的字符串值不会 return?
Why won't my string value return?
我正在尝试 运行 一个阶乘程序,该程序将输出被分解的数字及其阶乘。我使用了一个辅助方法来进行计算,并使它成为一个 String 方法。现在,当我转到 return 字符串到我的主程序时,它不起作用。我收到一条错误消息 "cannot find symbol"。我已经多次尝试重命名该变量,但它似乎无法识别它。请帮忙!
public class BigIntergerFactorial {
public static String factorial(int x) {
int result = 1;
for (int n = x; n > 0; n--) {
result = n * result;
String Run = (x + ", " + result);
}
return Run;
}
public static void main(String[] args) {
int x = 0;
while (x <= 30) {
String result1 = factorial(x);
System.out.println(result1);
x = x + 1;
}
}
}
就像现在一样,这个程序无法编译。 String Run
的范围仅限于 for 循环,而您返回循环外。
其次,我不会评论您代码的 correctness/incorrectness,因为这似乎超出了您发布的问题的范围。
这将解决从该函数返回的问题。
public static String factorial(int x) {
int result = 1;
String run = null;
for (int n = x; n > 0; n--) {
result = n * result;
run = (x + ", " + result);
}
return run;
}
我正在尝试 运行 一个阶乘程序,该程序将输出被分解的数字及其阶乘。我使用了一个辅助方法来进行计算,并使它成为一个 String 方法。现在,当我转到 return 字符串到我的主程序时,它不起作用。我收到一条错误消息 "cannot find symbol"。我已经多次尝试重命名该变量,但它似乎无法识别它。请帮忙!
public class BigIntergerFactorial {
public static String factorial(int x) {
int result = 1;
for (int n = x; n > 0; n--) {
result = n * result;
String Run = (x + ", " + result);
}
return Run;
}
public static void main(String[] args) {
int x = 0;
while (x <= 30) {
String result1 = factorial(x);
System.out.println(result1);
x = x + 1;
}
}
}
就像现在一样,这个程序无法编译。 String Run
的范围仅限于 for 循环,而您返回循环外。
其次,我不会评论您代码的 correctness/incorrectness,因为这似乎超出了您发布的问题的范围。
这将解决从该函数返回的问题。
public static String factorial(int x) {
int result = 1;
String run = null;
for (int n = x; n > 0; n--) {
result = n * result;
run = (x + ", " + result);
}
return run;
}