Java 在一个数组中使用3种方法(加法、平均法、NumberReveNoded)
我有一个名为tab的数组,其中有几个数字Java 在一个数组中使用3种方法(加法、平均法、NumberReveNoded),java,Java,我有一个名为tab的数组,其中有几个数字 int[] tab = {1,3,4,2}; 我必须创建3种方法: 1) 第一个addition()方法 2) 第二个average()方法 3) 第三个numberReveNode()方法 我的目标是:我必须用我的3种方法计算数组中奇数的平均值 这是我的addition()方法 public static int addition(int[] tab){ int sum = 0; for(int i=0
int[] tab = {1,3,4,2};
我必须创建3种方法:
1) 第一个addition()方法
2) 第二个average()方法
3) 第三个numberReveNode()方法
我的目标是:我必须用我的3种方法计算数组中奇数的平均值
这是我的addition()
方法
public static int addition(int[] tab){
int sum = 0;
for(int i=0;i<tab.length;i++){
sum += tab[i];
}
return sum;
}
public static double averages(int[] tab){
return (double) addition(tab) / tab.length;
}
public static int numberOddAdd(int[] tab, boolean value){
int parity = 0;
if(! value){
parity = 1;
}
int n = 0;
for(int i=0; i<tab.length;i++){
if(tab[i] % 2 == parity){
n += tab[i];
}
}
return n;
}
还有我的numberodeven()
方法
public static int addition(int[] tab){
int sum = 0;
for(int i=0;i<tab.length;i++){
sum += tab[i];
}
return sum;
}
public static double averages(int[] tab){
return (double) addition(tab) / tab.length;
}
public static int numberOddAdd(int[] tab, boolean value){
int parity = 0;
if(! value){
parity = 1;
}
int n = 0;
for(int i=0; i<tab.length;i++){
if(tab[i] % 2 == parity){
n += tab[i];
}
}
return n;
}
我的错误消息是->
不兼容类型:int无法转换为int
?int
无法转换为int[]
(请下次阅读错误)<代码>平均值取int[]
而numberodad
返回单个int
int
不是int[]
。第三种方法至少有三个版本。第一个名为numberovenod()
,第二个名为numberodeven()
,您的示例是numberodad()
。第三种方法到底应该做什么?假设它应该检索第一,第三,第五。。。(或数组int[]tab
中的第二、第四、第六个…)元素,则第三个方法将被声明为公共静态int[]numberodeven(…
),并可能返回一个大约为原始数组大小一半的int新数组。