如何在java中创建和显示随机数的数组列表?
我试图生成一个随机数的数组列表并显示它。我不确定我错在哪里。我认为我的showArray方法工作不正常,因为它显示了两个随机数,然后将第二个随机数重复n-2次如何在java中创建和显示随机数的数组列表?,java,arraylist,random,Java,Arraylist,Random,我试图生成一个随机数的数组列表并显示它。我不确定我错在哪里。我认为我的showArray方法工作不正常,因为它显示了两个随机数,然后将第二个随机数重复n-2次 private static ArrayList<Integer> RandomArray(int n) { ArrayList<Integer> arrayRandom = new ArrayList<Integer>(n); for (int i=0; i
private static ArrayList<Integer> RandomArray(int n)
{
ArrayList<Integer> arrayRandom = new ArrayList<Integer>(n);
for (int i=0; i<n; i++)
{
Random rand = new Random();
rand.setSeed(System.currentTimeMillis());
Integer r = rand.nextInt() % 256;
arrayRandom.add(r);
}
return arrayRandom;
}
private static void ShowArray(ArrayList<Integer> randomArray)
{
int n = randomArray.size();
ArrayList<Integer> showArray = new ArrayList<Integer>(n);
for (int i = 0; i<n; i++)
{
int r = randomArray.get(i);
showArray.add(r);
}
System.out.println(showArray);
}
public static void main(String args[])
{
ShowArray(RandomArray(5));
}
私有静态数组列表随机数组(int n)
{
ArrayList arrayRandom=新的ArrayList(n);
对于(inti=0;i将随机对象从循环中取出,不要每次都设置种子
ArrayList<Integer> arrayRandom = new ArrayList<Integer>(n);
Random rand = new Random();
rand.setSeed(System.currentTimeMillis());
for (int i=0; i<n; i++)
{
Integer r = rand.nextInt() % 256;
arrayRandom.add(r);
}
ArrayList arrayRandom=新的ArrayList(n);
Random rand=新的Random();
rand.setSeed(System.currentTimeMillis());
对于(inti=0;i将随机对象从循环中取出,不要每次都设置种子
ArrayList<Integer> arrayRandom = new ArrayList<Integer>(n);
Random rand = new Random();
rand.setSeed(System.currentTimeMillis());
for (int i=0; i<n; i++)
{
Integer r = rand.nextInt() % 256;
arrayRandom.add(r);
}
ArrayList arrayRandom=新的ArrayList(n);
Random rand=新的Random();
rand.setSeed(System.currentTimeMillis());
对于(int i=0;i而言,您的问题是不断重置种子,从而重新启动伪随机数生成器(PRNG)序列
这样做:
Random rand = new Random();
rand.setSeed(System.currentTimeMillis());
for (int i=0; i<n; i++)
{
Integer r = rand.nextInt(256);
arrayRandom.add(r);
}
Random rand=new Random();
rand.setSeed(System.currentTimeMillis());
对于(int i=0;i而言,您的问题是不断重置种子,从而重新启动伪随机数生成器(PRNG)序列
这样做:
Random rand = new Random();
rand.setSeed(System.currentTimeMillis());
for (int i=0; i<n; i++)
{
Integer r = rand.nextInt(256);
arrayRandom.add(r);
}
Random rand=new Random();
rand.setSeed(System.currentTimeMillis());
对于(int i=0;i,不要每次迭代都设置种子
Random rand = new Random();
rand.setSeed(System.currentTimeMillis());
做一次。不要每次迭代都设置种子
Random rand = new Random();
rand.setSeed(System.currentTimeMillis());
执行一次。完全正确!否则,您将使用相同的种子多次重新设置随机数生成器(因为它的运行速度将超过一毫秒)非常感谢!这是一种享受。对于经验丰富的人来说,最明显的一件事就是对像我这样的新手如此不安!没错!否则,你会用同一个种子重新设置随机数生成器几次(因为它的运行速度会超过一毫秒)非常感谢!这是一种享受。对于经验丰富的人来说,最明显的事情就是对像我这样的新手如此不安!谢谢你的帮助。非常有效。非常感谢!谢谢你的帮助。非常有效。非常感谢!