我试图学习for循环的工作原理,所以我编写了这样的代码。
for(System.out.println("hi"),int i=0;i<5;System.out.println("yo"),i++)
{
System.out.println("teapot");
}
Run Code Online (Sandbox Code Playgroud)
通过这种方式,我可以了解何时执行for循环的哪一部分。但是我在第一行指出“ .class期望”时出现错误。也许这只是意味着,我无法在第一行中声明变量。因此,我对其进行了重新设计,现在它可以完美运行了。
int i;
for(System.out.println("hi"),i=0;i<5;System.out.println("yo"),i++)
{
System.out.println("teapot");
}
Run Code Online (Sandbox Code Playgroud)
但是我不明白为什么我不能在第一行中声明一个变量。
基本的for循环的语法为:
BasicForStatement:
for ( [ForInit] ; [Expression] ; [ForUpdate] ) Statement
BasicForStatementNoShortIf:
for ( [ForInit] ; [Expression] ; [ForUpdate] ) StatementNoShortIf
ForInit:
StatementExpressionList
LocalVariableDeclaration
Run Code Online (Sandbox Code Playgroud)
换句话说:的第一位for可以包含语句表达式列表或局部变量声明,但不能同时包含两者。
System.out.println("hi") 是一个语句表达式(因为它是一个方法调用表达式);int i=0 不是语句表达式(因为它不是表达式);i=0 是一个语句表达式,因为它是一个赋值。| 归档时间: |
|
| 查看次数: |
63 次 |
| 最近记录: |