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