我是Java新手,我正在使用eclipse IDE,在尝试创建公共静态int时,我要求语法错误告诉我放;
。我在初始化变量时只收到此错误。其他2个变量在主类中使用得很好,是全局变量。我在public static int classaverage
部分得到了语法错误。
以下是代码:
public class Calcpromedio {
public static int classaverage;
classaverage = valusers / numuser;
}
我不知道他们在使用全局变量时是否具有特定规则,因此如果您找到解决方案,请告诉我原因以及是否有任何规则。
谢谢
我希望有一天我能回答问题而不回答问题......
答案 0 :(得分:2)
问题出在以下几行:
classaverage = valusers / numuser;
此表达式不在所有方法和代码块中。您可以将其重新分配给:
public static int classaverage = valusers / numuser;
或者使用静态块
public static int classaverage;
static {
classaverage = valusers / numuser;
}
加载类时将计算这两个值 - 静态初始化。这可能不是预期的行为。
但仅仅基于名称,这似乎是一个依赖于更多数据的计算,而不是静态初始化期间可用的数据。我建议在所有数据可用并收集后将该分配移动到方法中。
public void provideData(int[] someData){
//... Somewhere classaverage's value should be updated
classaverage = valusers / numuser;
}
答案 1 :(得分:0)
您的第二行classaverage = valusers / numuser;
应位于静态块/方法/构造函数中。