如何使用 return 语句从 Java 中的 for 循环中 return 多个值?
How do you return multiple values from a for loop in Java using a return statement?
我想使用 return 语句将多个值从我的 getMultiples 方法发送到我的 main 方法,而不使用 print 或 println 语句。
public class StaticMethods {
public static void main (String[] args) {
int a = 6;
int b = 9;
int result = getMultiple(a,b);
System.out.println(result + "\n")
System.out.println("The first " + a + " multiples of " + b + " are: ");
int p = getMultiples(a,b);
}
public static int getMultiple(int a,int b) {
return (int) (a * b);
}
public static int getMultiples(int a, int b) {
int p = 0;
for (int i = 1; i <= a; i++) {
p = getMultiple(a,i);
}
return (p);
}
}
我试过将 return 语句放在 for 循环中,但它不起作用。
在 Java 中,只要在代码中遇到 return,方法就会从执行堆栈中移除,流程会 return 返回到调用方法。所以你不能 return 来自一个方法的多个值。相反,您应该创建一个 list/array 和 return,如下所示(数组示例):
public class StaticMethods {
public static void main (String[] args) {
int a = 6;
int b = 9;
int result = getMultiple(a,b);
System.out.println(result + "\n");
System.out.println("The first " + a + " multiples of " + b + " are: ");
int p[] = getMultiples(a,b);
}
public static int getMultiple(int a,int b) {
return (int) (a * b);
}
public static int[] getMultiples(int a, int b) {
int[] p = new int[a];
for (int i = 1; i <= a; i++) {
p[i-1] = getMultiple(a,i);
}
return p;
}
}
我想使用 return 语句将多个值从我的 getMultiples 方法发送到我的 main 方法,而不使用 print 或 println 语句。
public class StaticMethods {
public static void main (String[] args) {
int a = 6;
int b = 9;
int result = getMultiple(a,b);
System.out.println(result + "\n")
System.out.println("The first " + a + " multiples of " + b + " are: ");
int p = getMultiples(a,b);
}
public static int getMultiple(int a,int b) {
return (int) (a * b);
}
public static int getMultiples(int a, int b) {
int p = 0;
for (int i = 1; i <= a; i++) {
p = getMultiple(a,i);
}
return (p);
}
}
我试过将 return 语句放在 for 循环中,但它不起作用。
在 Java 中,只要在代码中遇到 return,方法就会从执行堆栈中移除,流程会 return 返回到调用方法。所以你不能 return 来自一个方法的多个值。相反,您应该创建一个 list/array 和 return,如下所示(数组示例):
public class StaticMethods {
public static void main (String[] args) {
int a = 6;
int b = 9;
int result = getMultiple(a,b);
System.out.println(result + "\n");
System.out.println("The first " + a + " multiples of " + b + " are: ");
int p[] = getMultiples(a,b);
}
public static int getMultiple(int a,int b) {
return (int) (a * b);
}
public static int[] getMultiples(int a, int b) {
int[] p = new int[a];
for (int i = 1; i <= a; i++) {
p[i-1] = getMultiple(a,i);
}
return p;
}
}