Java 重复随机生成器,如何存储和使用生成的第一个值

Java 重复随机生成器,如何存储和使用生成的第一个值,java,Java,我正在玩的一个游戏每分钟调用一组代码多次以检查条件。在这段代码中,我有一个随机生成器,每当游戏检查条件时,它都会生成一个新的数字,这在大多数情况下都很好,但对于一个随机数字,我希望保留生成的第一个值以供使用,并丢弃其余的值。请问有没有办法做到这一点 int l = random.nextInt(1000); int k1 = l - 500; l = random.nextInt(1000);

我正在玩的一个游戏每分钟调用一组代码多次以检查条件。在这段代码中,我有一个随机生成器,每当游戏检查条件时,它都会生成一个新的数字,这在大多数情况下都很好,但对于一个随机数字,我希望保留生成的第一个值以供使用,并丢弃其余的值。请问有没有办法做到这一点

 int l = random.nextInt(1000);
                    int k1 = l - 500;
                    l = random.nextInt(1000);
                    int j2 = l - 500;
                    int i3 = random.nextInt(500);
                    int l3 = i3 - 250;
                    int k4 = random.nextInt(500);
                    int l4 = k4 - 250;
                    int i5 = random.nextInt(100);
                    int j5 = random.nextInt(100);                    

                    if(j5 < 50)
                       {
                            if(i5 > 0 && i5 <= 7)
                            {  

                            } else
                            if(i5 > 7 && i5 <= 16) 
                            {

                            }else
                            if(i5 > 16 && i5 <= 21)
                            { 

                            }                          

                    if(j5 > 49)
                            if(i5 > 0 && i5 <= 3)
                            {

                             } else
                            if(i5 > 3 && i5 <= 6)
                            {

                            } else
                            if(i5 > 6 && i5 <= 9)
int l=random.nextInt(1000);
int k1=l-500;
l=random.nextInt(1000);
int j2=l-500;
int i3=随机的nextInt(500);
int l3=i3-250;
int k4=随机的nextInt(500);
INTL4=k4-250;
int i5=随机的nextInt(100);
int j5=随机的nextInt(100);
如果(j5<50)
{
如果(i5>0&&i5 7&&i5 16&&i5 49)
如果(i5>0&&i5 3&&i5 6&&i5尝试以下方法:

public class A{
private Integer j5;
    public A(){
        j5 = null;
    }

    public void checkingMethode(){
        //Generate a bunch of randoms
        if (j5 == null) {
            j5 = random.nextInt(100);
        }
    }
}

这样j5将只被赋值一次。

我将假定此代码位于调用的类方法中。 可以在同一个类中使用静态int类变量

private static int j5;
然后使用

if (null==this.j5) this.j5=random.nextInt(100);

因此,第一次运行代码时,它会被设置并保持设置状态。

您考虑过将其存储到变量中吗?您能扩展一下吗?我的java技能非常有限。我尝试过在单独的if语句和计数器中声明它,但我发现变量的编译错误。非常感谢您的回复。非常感谢您的建议关于和帮助,我将稍后试用,并让您知道我的进展情况。您是正确的,它位于类方法内。我刚刚有时间尝试此建议,但当我尝试编译时,我收到一条错误消息运算符==无法应用于,int请提供任何建议?谢谢您的答复,我将尝试您的建议和上面的建议,并让您知道你知道我是怎么做的。重新定义了它,但不能让它编译而没有错误,我到底应该在哪里将它插入到我的代码中?你到底在哪里出错?类A是一个例子,我想你在一个有某种构造函数的类中工作。初始化j5在这个构造函数中为null,而在你的methode中为null,你在上面链接的检查中检查j5是否为null,这意味着它还没有被赋值。如果是这种情况,你给它赋值是随机的。我还修改了我的原始答案,因为它有一些不可编译的代码。