我的第一个密码问题!学习Java并需要帮助在阵列上执行基本统计
这个项目是关于方法和数组的,分为三个部分。首先,创建一个数组。第二,用随机整数填充所述数组。最后,创建一个方法,显示每个int是偶数还是奇数,并提供随机int的平均值。 Java是我的第一种编程语言,在我的课程中我被介绍到这一点,我已经在这个问题上工作了大约4-5个小时,但遇到了麻烦。我似乎无法让我的statsDisplay方法在我创建的数组上执行必要的统计。看起来,由于它总是以交替的“偶数/奇数”结果出现,它只是从1-20创建自己的数组,并分析它,而不是前面的Math.random()数组。 有人能看到这里可能出了什么问题吗? 此外,这是我第一次在这里发表文章,所以如果它的格式不正确或以一种奇怪的方式询问,我很抱歉我的第一个密码问题!学习Java并需要帮助在阵列上执行基本统计,java,arrays,methods,Java,Arrays,Methods,这个项目是关于方法和数组的,分为三个部分。首先,创建一个数组。第二,用随机整数填充所述数组。最后,创建一个方法,显示每个int是偶数还是奇数,并提供随机int的平均值。 Java是我的第一种编程语言,在我的课程中我被介绍到这一点,我已经在这个问题上工作了大约4-5个小时,但遇到了麻烦。我似乎无法让我的statsDisplay方法在我创建的数组上执行必要的统计。看起来,由于它总是以交替的“偶数/奇数”结果出现,它只是从1-20创建自己的数组,并分析它,而不是前面的Math.random()数组。
public class Practicestuff {
public static void main(String[] args) {
int[] vals = new int[20];
fill(vals);
statsDisplay(vals);
print(vals);
}
public static void print(int[] array) {
for(int i = 0; i < array.length; i++) {
System.out.println(array[i] + " ");
}
System.out.println();
}
public static void fill(int[] array) {
for(int i = 0; i < array.length; i++) {
array[i] = (int) (Math.random() *100);
public static void statsDisplay(int[] array) {
for(double i = 0; i < array.length; i++) {
if(i % 2 == 0) {
System.out.println("Number is even");
if(i % 2 != 0)
System.out.println("Number is odd");
}
}
}
public class Practicestuff{
公共静态void main(字符串[]args){
int[]VAL=新的int[20];
填充(VAL);
静态显示(VAL);
打印(VAL);
}
公共静态无效打印(int[]数组){
for(int i=0;i
在您的statsDisplay()
方法中,for
循环中的i
是索引(1,2,3,4…。if
语句正在检查i
是奇数还是偶数。您想检查数组[i]
是奇数或偶数,因此您应该将if语句中的i
替换为array[i]
在statsDisplay
方法中i
是您的迭代计数器,而不是数组的内容。您需要检查array[i]
并对其执行操作,而不仅仅是计数器。此外,您的代码似乎缺少一些大括号。说到这里,尽管在语法上这样做是有效的,但您应该始终对if
、和while
语句使用大括号。除了@OHGODSPIDERS已经说过的内容之外是使用IDE的调试器非常有帮助的一个完美例子。一次只检查一行代码可能会告诉您关于i
的某些内容不正确。非常感谢!这很有效,而且事后看来完全有意义。没问题。祝您在未来的代码上好运(和洞察)。