作者starlichin (白星羽)
看板java
标题[问题] 计算Array的平均值
时间Fri Sep 15 22:34:41 2017
我想写一个array的constructor还有一个average的method去计算其平均值
程式码如下:
public class Array2 {
public int sum;
public int x, r0, r1, r2, r3, r4, r5;
public int num[];
public Array2(int r0, int r1, int r2, int r3, int r4, int r5) {
num = new int[]{this.r0, this.r1, this.r2, this.r3, this.r4, this.r5};
}
public double average() {
for (int x : num) {
sum += x;
}
return sum / num.length;
}
class main {
public static void main(String args[]) {
Array2 arr = new Array2(2, 4, 6, 8, 10, 12);
arr.average();
System.out.println(arr.average());
}
}
}
但执行後会出现inner class cannot have static declaration的错误
我是初学者看不出问题出在哪 :(
麻烦版上的强者解答了~
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.166.131.169
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1505486084.A.7B1.html
1F:→ ssccg: 不要多包一层class main,main method直接放在外面的class 09/15 22:44
2F:→ ssccg: 另外你constructor里面丢给num的不是传入的参数,而是物件 09/15 22:45
3F:→ ssccg: 栏位,显然不会是你要的结果,栏位只需要num其他都是多的 09/15 22:47
4F:→ ssccg: 然後sum是int,num.length也是int,会变整数除法,你必须先 09/15 22:47
5F:→ ssccg: 把sum转型成double再除 09/15 22:48
6F:→ starlichin: 感谢!! 09/16 18:28