【问题标题】:Cannot sort array with randomly generated numbers无法使用随机生成的数字对数组进行排序
【发布时间】:2013-01-13 16:03:22
【问题描述】:

在数组中生成随机数后,我无法让数组排序。我认为在分配所有数字之前对数组进行排序。我也尝试在主循环内嵌套另一个 for 循环,但我要么得到相同的结果,要么得到一个无限循环的随机数。

public static void main(String[] args) {
    int[] anArray;
    anArray = new int[10000];
    Random generator= new Random();

    for(int i=0; i<10000; i++){
       anArray [i]= (generator.nextInt(98)+1);
       java.util.Arrays.sort(anArray);
       System.out.println(anArray[i];
    }
 }

【问题讨论】:

    标签: java arrays sorting random numbers


    【解决方案1】:

    您需要将java.util.Arrays.sort(anArray); 置于循环之外,否则您将在每一步进行排序,而第 i 个元素将不是您刚刚添加的:

    for(int i=0; i<10000; i++){
       anArray [i]= (generator.nextInt(98)+1);
    }
    java.util.Arrays.sort(anArray);
    System.out.println(Arrays.toString(anArray));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-01-28
      • 2021-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多