Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 满足输出条件时中断do while循环_Java - Fatal编程技术网

Java 满足输出条件时中断do while循环

Java 满足输出条件时中断do while循环,java,Java,我想打印2个随机值,如“1,3”,只要打印的两个数字不相等 当打印的两个数字相同时,循环应中断 我已经创建了下面的一段代码,但我不确定当输出的两个数字相同时,为了中断语句,条件是什么。有人能帮忙吗?谢谢大家! Random random = new Random(); do { int randomInt = random.nextInt(6); int randomInt2 =

我想打印2个随机值,如“1,3”,只要打印的两个数字不相等

当打印的两个数字相同时,循环应中断

我已经创建了下面的一段代码,但我不确定当输出的两个数字相同时,为了中断语句,条件是什么。有人能帮忙吗?谢谢大家!

    Random random = new Random();

    do
    {                              
        int randomInt = random.nextInt(6);
        int randomInt2 = random.nextInt(6);
        System.out.println(Integer.toString(randomInt) + ", " + Integer.toString(randomInt2));
    }
    while ( /* problem */);

它只是
而(randomInt!=randomInt2)
。而且,正如在注释中所说的,您应该在循环之外声明变量。你不必初始化它们,只要说

int randomInt,randomInt2;
这就足够了。

这样做:

int randomInt, randomInt2;

do {
    randomInt = random.nextInt(6);
    randomInt2 = random.nextInt(6);
    System.out.println(randomInt + ", " + randomInt2);
} while (randomInt != randomInt2);

要澄清您的一个困惑:

int i; // declaration
i = 2; // assignment
int i = 2; // declaration _and_ assignment

在do/while循环外声明两个int变量…嗨,问题是如果我在循环外声明变量,它们总是相同的。当然不是!你怎么会这么想?我告诉你申报,不要分配!我觉得你根本不需要那个环。啊,非常感谢!!!这真的很有帮助。我很欣赏“您不必声明它们”您好,问题是如果变量在循环内,我不能使用该条件,如果我在循环外声明它们,它们将始终是相同的。@user2917239在注释中阅读我的答案;你好像把声明和任务混在一起了谢谢,我现在明白了。我很感激@fge:我的意思是“初始化”,而不是“声明”。很抱歉