所以,基本上我开始这个程序,如果用户输入 1 ,他可以购买东西,如果他输入 2 他可以查看他的东西,如果他按 3,他可以更新它,而且如果他输入4 他可以退出循环。
到目前为止我已经做了这么多
import java.util.Scanner;
public class ThumbDrives {
public static void data()
{
System.out.print("HD of 512MB (@ 10$ per)");
System.out.print("HD of 512MB (@ 10$ per)");
System.out.print("HD of 512MB (@ 10$ per)");
System.out.print("HD of 512MB (@ 10$ per)");
int i1;
}
public static void main(String args[])
{
int i1,i2,i3,i4,R1,R2,R3,R4;
int ch,choi=0;
do {
Scanner choice = new Scanner(System.in);
System.out.println("Enter your Choice -;");
System.out.println("1) Entering the data");
System.out.println("2) Displaying the data");
System.out.println("3) Updating the data");
System.out.println("4) Press 4 to exit");
ch = choice.nextInt();
switch(ch)
{
case 1:
break;
case 2:
break;
case 3:
break;
case 4:
break;
default:
System.out.print("Your choice isnt appropriate");
}
}
while(choi!=4);
}
}
但是,我希望这样,如果我获得方法数据中输入的值,就可以在类中的任何位置访问它们。
抱歉,我是java新手,任何帮助将不胜感激:)
最佳答案
这是一个可变范围问题。
局部变量是在方法的范围内声明的。所以,如果你写
int i1;
在 data() 方法的范围内,您只能在 data 中访问它。
如果将它从局部变量移动到类字段,那么整个类都可以访问它。因此,将 i1 声明移到 data() 之外,并将其保留在
public class ThumbDrives {
...
}
如果它被声明为“静态”,则它被称为类变量。
public class ThumbDrives {
static int i1;
}
类/静态变量可供该类的所有实例使用。
如果没有声明为静态
public class ThumbDrives {
int i1;
}
然后它将在内存中的该实例中可用。
关于java - 如何将从一种方法获得的变量值传递给另一种方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21037432/