从Shuffling Array到Incrementing Array(更改)

时间:2013-11-26 10:42:13

标签: java arrays random arraylist shuffle

(java初学者在这里) 我关注此Random shuffling of an array 但我想要做的不是随机更改数组中的元素,而是在我的方法中使用它。我想确保更改列表的顺序来自[1] .. [2] .. [3] ..... (基本上增加) 我的最终目标是拥有一个数字表

int [] a = {1,2,3,4,5,6}然后在我的方法中

static void shuffleArray(double[] solutionArray)
{
    Random rnd = new Random();
    for (int i = solutionArray.length - 1; i > 0; i++)
    {
      int index = rnd.nextInt(i + 1);
      int value = 0;
     // int charValue = value.digit(0);
      String next = String.valueOf( (double) (value + 1));
      System.out.println(next);
      // Simple swap
      double a = solutionArray[index];
      solutionArray[index] = solutionArray[i];
      solutionArray[i] = a;
    }

  }

public static void main(String[] args)
{
  double[] solutionArray = { 1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7};
  double[] solution = { 1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7};
  shuffleArray(solutionArray);
  shuffleArray(solution);

  for (int i = 0; i < 7; i++)
  {
      position.setspeed(solutionArray[0]);
  }
}

但是当我设置它或在一个方法中使用它时我希望它从1到6而不是随机选择一个元素或从链接洗牌元素。

2 个答案:

答案 0 :(得分:0)

这条线路不对:

for (int i = solutionArray.length - 1; i > 0; i++)

如果你向后循环,它应该是:

for (int i = solutionArray.length - 1; i >= 0; i--)

如果你正在循环前进,那应该是:

for (int i = 0; i < solutionArray.length; i++)

答案 1 :(得分:0)

有数字表

import java.util.Scanner;

public class ArrayTable {

public static void main(String[] args) {
     int a[]={1,2,3,4,5,6,7,8,9,10};

    int solution[]=new int[10];


    Scanner sc=new Scanner(System.in);
    System.out.println("Enter the number");
    int num=sc.nextInt();

    for(int i=0;i<a.length;i++)
    {
        solution[i]=a[i]*num;
    }
    for(int y:solution)
    {
        System.out.print(y+"\n");
    }
}
}