JAVA:对单个程序应用迭代时的结果不同

时间:2015-03-28 09:05:06

标签: java eclipse

最近,我编写了一个工作正常的程序。我想通过为程序应用不同的随机种子来获得多个结果,其中包括随机方法。我用两种方式做到了,一种是手动改变随机种子30次,通过为每个种子运行它我们可以得到一个结果;另一种方法是添加" for"循环生成与第一种方法中使用的相同的随机种子,最后通过运行它,我得到了多个(30)结果。问题是当我将结果与第一种方法的结果逐一比较时,其中一些是不同的。我感到困惑,请帮助我。

我可能会将其描述如下,以使您更清楚。

假设我的单个程序是" void sp(int i)",其中" i"是种子的接口。

(1)第一种方法是改变" i"单个程序的手动,并逐个运行。

public static void main(String[] args) throws IOException {
    // TODO Auto-generated method stub

    int sample = 0; //sample is the random seed: 0, 1, 2, ..., 29
            sp(sample);

     }

(2)第二种方法是添加" for"循环生成随机种子。

public static void main(String[] args) throws IOException {
    // TODO Auto-generated method stub

    for(int sample = 0; sample < 30; sample ++){ //sample is the random seed

                sp(sample);

            }
     }

第10,16和28号结果不同。为什么会这样,以及如何处理它。

我的平台是DELL OPTIPLEX 960,操作系统是Windows 7(64位),软件是

Eclipse Standard / SDK

版本:Luna Release(4.4.0) 构建ID:20140612-0600。

提前致谢。

随着

0 个答案:

没有答案