有同时做while循环,甚至其后的代码不会抛出语法错误或编译时错误为什么之后没有分号

玛纳斯特里帕蒂:
import java.util.*;
import java.lang.*;
import java.io.*;

class Ideone
{
    public static void main (String[] args) throws java.lang.Exception
    {
        int i = 0;
        do while ( i < 10 )
        System.out.print("The value of i is " + i);
        while ( i > 10 ) ;
    }
}

为什么这个代码不扔语法错误?有一段时间后,别无分号。

奥莱VV:

您的代码被认为以这种方式:

    int i = 0;
    do {
        while (i < 10) {
            System.out.print("The value of i is " + i);
        }
    } while (i > 10);

do耦合与第二while,不是第一个。这是习惯上有一个块语句({... }之间)dowhile,但Java允许任何声明那里,其中包括一个while声明。

(顺便说一句你的内循环是一个无限循环,让您的片断不会终止。但是,这是你问的不是什么。)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

当没有语法错误,或runetime错误为什么不会这行代码执行

为什么这段代码没有语法错误?

为什么下面的代码有语法错误?

if((... ...)then)中缺少分号,并且没有语法错误?

SQLite - 为什么这不会作为语法错误抛出?

为什么在此示例代码中没有出现语法错误?

使用Perl执行Python脚本时,为什么没有语法错误?

为什么宏在脚本中没有逻辑或语法错误的情况下给出编译错误?

为什么此代码会在我调用多个 -> 函数的所有函数中抛出意外的语法错误

对于代码中的循环语法错误,但分开时不会

为什么当我的IDE没有时,javac会抛出编译错误?

为什么下面的代码编译没有错误?

为什么在这个SpringAOP语法错误@Pointcut没有弹出任何错误?

为什么下面的代码编译时没有错误?

为什么此std :: string C ++代码没有给出编译时错误?

为什么C标准允许此代码编译时没有错误?

为什么此代码在C ++ 17中编译时没有错误?

为什么下面的代码片段没有给出编译时错误?

为什么实例初始化块没有为重复输入抛出编译时错误?

为什么在C#中未处理Delegate中的返回值时没有编译器错误抛出?

我不知道为什么这段代码中有语法错误

没有双分号冒号的OCaml模式匹配语法错误

(Python)为什么运行“ wut:2 + 2 = 5”行没有给出语法错误?

语法错误:带有多个分号的导入语句

为什么我有“意外的令牌语法错误”

为什么我的 Python 函数中有语法错误?

使用带有分号字符的STRPOS时的语法错误或访问冲突

为什么C#编译器没有抛出任何错误?

SCSS编译抛出语法错误不是有效的CSS值