来源:
import java.util.Scanner;
class Test1{
public static void main(String[] args){
int x,y,ir;
x = 10;
y = 5;
Scanner scan = new Scanner(System.in);
ir = scan.nextInt();
switch(ir){
case 1: y++;
break;
case 2: y--;
break;
case 3: x++;
break;
case 4: x--;
break;
}
}
}
我想重复这部分几次:
switch(ir){
case 1: y++;
break;
case 2: y--;
break;
case 3: x++;
break;
case 4: x--;
break;
}
但我不想再写一遍。这就是为什么我想把它写成过程或方法。有没有办法编写一个可以在我的主要方法中修改变量的方法?
最佳答案
在你的情况下你不能,因为你正在使用 primitive types .但是,如果您使用引用类型,则可以在将其传递给另一个方法时修改其内容。
您的问题的解决方案是在更高级别定义您的变量(此处为实例范围)或将包装器类型传递给您的方法(例如 int
具有相应的引用输入整数
)。不过,我不建议您采用后一种方法。
另一种可能更有趣的解决方案是将其包装在 a loop 中。在你的 main
方法中。我不完全清楚你想做什么,但你一定要看看是否可以这样解决。
请注意,您正在使用 main
方法,因此您要调用的任何方法都必须是 static
。正确的代码不会这样做,而是使用对象和实例方法。
但是不行,你不能嵌套方法。
关于java - 在 Java 中是否可以在 main 方法中创建过程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25318814/