gpt4 book ai didi

java - 在 for 循环内声明变量以及 print 语句时出错

转载 作者:行者123 更新时间:2023-12-01 05:16:10 24 4
gpt4 key购买 nike

我想了解 for-loop 是如何工作的,所以我编写了这样的代码。

for(System.out.println("hi"),int i=0;i<5;System.out.println("yo"),i++) 
{
System.out.println("teapot");
}

这样我就可以理解,for循环的哪一部分在什么时候被执行了。但是我在第一行中收到一个错误,指出“.class expected”。也许这只是意味着,我不能在第一行声明一个变量。所以我重新设计了它,现在它完美地工作了。

int i;
for(System.out.println("hi"),i=0;i<5;System.out.println("yo"),i++)
{
System.out.println("teapot");
}

但是我不明白为什么我不能在第一行声明一个变量。

最佳答案

basic for loop 的语法是:

BasicForStatement:
for ( [ForInit] ; [Expression] ; [ForUpdate] ) Statement

BasicForStatementNoShortIf:
for ( [ForInit] ; [Expression] ; [ForUpdate] ) StatementNoShortIf

ForInit:
StatementExpressionList
LocalVariableDeclaration

换句话说:for 的第一位可以包含 statement expressions 的列表。 , 或局部变量声明,但不能两者兼有。

  • System.out.println("hi")是语句表达式(因为是方法调用表达式);
  • int i=0 不是语句表达式(因为它不是表达式);
  • i=0 是一个语句表达式,因为它是一个赋值。

关于java - 在 for 循环内声明变量以及 print 语句时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56441642/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com