在整数数组中返回和显示值时出现问题-Java

在整数数组中返回和显示值时出现问题-Java,java,arrays,Java,Arrays,我试图使用一个随机类和一个循环来创建一个包含30个元素的整数数组,用0到49之间的数字填充数组 然后,程序应要求用户提供一个介于0和49之间的数字,并以单独的方法返回该值,然后使用另一个循环查看数组并显示每个数字,并显示一条消息,说明数组元素中的数字是否大于、等于或小于用户提供的数字 到目前为止,我所拥有的: import java.util.Scanner; import java.util.Random; public class MethodTest { public stati

我试图使用一个随机类和一个循环来创建一个包含30个元素的整数数组,用0到49之间的数字填充数组

然后,程序应要求用户提供一个介于0和49之间的数字,并以单独的方法返回该值,然后使用另一个循环查看数组并显示每个数字,并显示一条消息,说明数组元素中的数字是否大于、等于或小于用户提供的数字

到目前为止,我所拥有的:

import java.util.Scanner;
import java.util.Random;

public class MethodTest 
{
   public static void main(String[] args)
   {
   // Arrays
   int[] num = new int[30];
   int randomNumber;
   int userNumber;


   getValues(num);


   for(int x = 0; x < num.length; x++)
   {
   Random r = new Random();
   randomNumber = r.nextInt(50);
   System.out.println(num[x] + randomNumber);
   }

   for(int x = 0; x < num.length; x++)
   {
   System.out.println("The number " + getHigh(num) + "is greater than: " + userNumber);
   }

   for(int x = 0; x < num.length; x++)
   {
   System.out.println("The number " + getLow(num) + "is less than: " + userNumber);
   }

   for(int x = 0; x < num.length; x++)
   {
   System.out.println("The number " + getEqual(num) + "is equal to: " + userNumber);
   }
}

   public static void getValues(int[] array)
   {
   Scanner kb = new Scanner(System.in);
   int userNumber;
   System.out.print("Enter a number between 0 and 49: ");
   userNumber = kb.nextInt();

   return userNumber;
   }

   public static void getHigh(int[] num)
   {
   int high = num[0];
   for(int x = 0; x < num.length; x++) 
      {
      if(num[x] > userNumber)
      high = num[x];
      }
   return high;
   }

   public static void getLow(int[] num)
   {
   int low = num[0];
   for(int x = 0; x < num.length; x++) 
      {
      if(num[x] > userNumber)
      low = num[x];
      }
   return low;
   }

   public static void getEqual(int[] num)
   {
   int equal = num[0];
   for(int x = 0; x < num.length; x++) 
      {
      if(num[x] == userNumber)
      equal = num[x];
      }
   return equal;

   }
}

import java.util.Scanner;
导入java.util.Random;
公共类方法测试
{
公共静态void main(字符串[]args)
{
//阵列
int[]num=新的int[30];
整数随机数;
int用户号;
获取值(num);
对于(int x=0;xuserNumber)
高=num[x];
}
高回报;
}
公共静态void getLow(int[]num)
{
int low=num[0];
对于(int x=0;xuserNumber)
低=num[x];
}
低回报;
}
公共静态void getEqual(int[]num)
{
int=num[0];
对于(int x=0;x

我无法理解如何返回显示用户编号与数组中的编号之间关系的值。谢谢你的帮助

老实说,我不知道如何回答您的问题,但这是如何编写作业的代码,如果您需要帮助,请告诉我

import java.util.Scanner;
import java.util.Random;

public class main{
    public static void main(String args[]){
        Random r = new Random();
        int[] nums = new int[30];
        for(int i=0;i<30;i++){
            nums[i]=r.nextInt(50);
        }
        check(nums);
    }
    public static void check(int[] nums){
        Scanner in = new Scanner(System.in);
        System.out.print("Enter an integer between 0 and 49");
        System.out.println();
        int x = in.nextInt();
        for(int i: nums){
            if(i<x) System.out.println("The number " +x+ " is greater than " + i+ ".");
            else if(i>x) System.out.println("The number " +x+ "is less than " + i+ ".");
            else if(i==x) System.out.println("The number " +x+ "is equal to " + i+ ".");
        }
    }
}
import java.util.Scanner;
导入java.util.Random;
公共班机{
公共静态void main(字符串参数[]){
随机r=新随机();
int[]nums=新的int[30];

对于(int i=0;iYou可以从将
publicstaticvoidgetvalues(int[]array)
更改为类似于
publicstaticint getValues()的内容开始
…非常确定您不需要将数组传递给此方法,因为它没有使用它。切勿在循环体中创建
Random
。您可以保证不会获得随机化值。请确保初始化
新Random()
在循环之外。否则,您将使用相同的时间种子创建一组新的随机实例,并要求每个实例输入第一个值,该值几乎总是相同的。欢迎使用StackOverflow。查看您的代码,它似乎存在许多问题,包括一些可能产生编译时错误的问题。请se将您的问题分解为几个小部分,这些小部分可以用最少的代码示例来表示,并且可能有一个正确的答案。然后在StackOverflow上以单独的帖子形式提问这些小问题。这样不仅您可以得到更好的答案,而且您还可以在过程中自己找到问题的答案你的问题,如何显示关系,是第2步。第1步是用随机数填充数组。在进入第2步之前,验证第1步是否有效。