我正在构建RPG角色生成器,并且对角色的属性有半困难时间。我有问题,原因是这样的:如何在Java中更改变量的值?
int base = 10;
int iStrengthStatPoints = scan.nextInt();
int iStrength = (base +iStrengthStatPoints);
它不能编译,因为我后来输出在我的代码变量“iStrength”,它说无法找到象征。我意识到这是由于iStrength被设置为base + iStrengthStatPoints的值。所以我想知道是否有一种方法可以为iStrengthStatPoints分配一个初始值,然后可以选择在稍后输入一个新值。
我的想法是这样的:
int iStrengthStatPoints = 0;
int iStrengthStatPoints = scan.nextInt();
这将有基值0,但后来我可以输入一个高于一切的价值。这可能吗?如果不是,有没有办法做类似的事情?
我有一个变量iStrength在switch语句的一个case中声明和初始化,并在另一个case中打印出来。尽管如此,它的方法相同。它会在不同的情况下成为一个问题吗? – user1174711 2012-02-11 03:30:48
如上所述,没有。一般而言,交换机中的每个案例并不构成自己的范围。为了正确诊断,最好提供声明的上下文(只比你已经完成的要多一点)以及你从编译器中得到的错误 – akf 2012-02-11 03:38:07
我有两个switch语句,变量声明在一个在另一个打印。 在我的第二个switch语句的情况1中,我有: int iStrengthStatPoints = 0; iStrengthStatPoints = scan.nextInt(); int iStrength =(base + iStrengthStatPoints); 在我的第一个switch语句的情况2中,我有: System.out.println(“Your strength:”+ iStrength); 错误是“找不到符号iStrength”。是否有两种不同的开关语句会成为问题? – user1174711 2012-02-11 03:53:59