Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在数组中生成和排序20个数字的序列w/for循环(Java)_Java_Arrays - Fatal编程技术网

在数组中生成和排序20个数字的序列w/for循环(Java)

在数组中生成和排序20个数字的序列w/for循环(Java),java,arrays,Java,Arrays,在java中,我在使用for循环生成和排序数组中20个随机数的序列时遇到问题。它运行,但不生成正确的输出。根据netbeans的说法,math.random导入没有被使用,我也不知道为什么,正如我所说的那样。我做了几个小时都没用 包装问题1; 导入java.util.array; 导入java.util.Random; 公共类问题1 { 公共静态void main(字符串[]args) {num num=new num(); int[]数组=新的int[20]; 打印序列(数组); } 私有静态

在java中,我在使用for循环生成和排序数组中20个随机数的序列时遇到问题。它运行,但不生成正确的输出。根据netbeans的说法,math.random导入没有被使用,我也不知道为什么,正如我所说的那样。我做了几个小时都没用

包装问题1;
导入java.util.array;
导入java.util.Random;
公共类问题1
{
公共静态void main(字符串[]args)
{num num=new num();
int[]数组=新的int[20];
打印序列(数组);
}
私有静态void打印序列(int[]num)
{
对于(int i=0;i<20;i++)
{
int RandomNum=num[i];
RandomNum=(int)(Math.random()*99+1);
System.out.println(“序列是:”);
打印顺序(随机数);
}
}
私有静态printOrderedSequence(int[]数组)
{
数组。排序(数组);
for(int i=0;i
您已经导入了
java.util.array
为什么不使用它来打印序列

注意:我删除了不必要的
java.util.Random
(如果您愿意,可以使用revert-back-to-use,以及
num
的用途,因为我认为这会使一切变得比需要的更复杂


尝试它

在您的第一个for循环中再次考虑您的逻辑。没有
math.random
import;
java.util.random
没有被使用,因为您没有在这段代码中使用
random
类。如果您不想使用它,您不必导入
java.util.random
。而且数组也没有被打印出来因为
Arrays.toString(array)
不是对
System.out.println(…)
的调用的一部分:它只是它自己语句中的一个方法调用。您认为
num=new num();
是吗?@AndyTurner抱歉,我的错。谢谢你,但有几个问题。我之前在网上读到的所有内容都说,排序数组需要第二个for循环(就像我在它自己的私有类中所做的那样)。这是多余的吗?其次,如何使用math.random随机生成数字而不导入?使用
数组对数组进行排序。排序
(您以前做过此操作)如果您需要从头开始实现排序,请看这个。其次,您不需要专门在java中导入
Math
,并且使用
Math.random
是在java中为初学者生成随机数的更简单的方法之一。
import java.util.Arrays;

public class problem1 {
  public static void main(String[] args) {

    int[] sequence = new int[20];

    //Generates 20 Random Numbers in the range 1 to 99
    for(int i = 0; i < sequence.length; i++)
      sequence[i] = (int)(Math.random() * 99 + 1);

    System.out.println("The sequence is: " + Arrays.toString(sequence));

    //Sort the sequence
    Arrays.sort(sequence);

    System.out.println("The sorted sequence is: " + Arrays.toString(sequence));
  }
}
The sequence is: [10, 25, 94, 61, 59, 14, 64, 90, 28, 54, 29, 17, 71, 74, 95, 9, 56, 46, 44, 57]
The sorted sequence is: [9, 10, 14, 17, 25, 28, 29, 44, 46, 54, 56, 57, 59, 61, 64, 71, 74, 90, 94, 95]