为什么赢了';这不是用Java打印值吗?
我不明白为什么代码不能打印这些值。如果有人能告诉我如何使循环成功运行,我将不胜感激。感谢您的帮助,因为这是我第一次尝试Java。谢谢。您的循环没有运行,因为为什么赢了';这不是用Java打印值吗?,java,for-loop,if-statement,Java,For Loop,If Statement,我不明白为什么代码不能打印这些值。如果有人能告诉我如何使循环成功运行,我将不胜感激。感谢您的帮助,因为这是我第一次尝试Java。谢谢。您的循环没有运行,因为one开头不是0。只要条件为真,循环就会运行 你的条件应该是one>=0,或者如果你不想让循环为one==0运行,那么就让它成为one>0for循环测试条件从一开始就是假的(one==0)。您应该将one==0或one>0作为for循环测试条件。one==0永远不会为真,因此循环不会运行 您想执行one>0 在您的循环中作为: class S
one
开头不是0。只要条件为真,循环就会运行
你的条件应该是
one>=0
,或者如果你不想让循环为one==0运行,那么就让它成为one>0
for循环测试条件从一开始就是假的(one==0
)。您应该将one==0
或one>0
作为for循环测试条件。one==0
永远不会为真,因此循环不会运行
您想执行one>0
在您的循环中作为:
class Some {
public static void main(String args[]) {
for(int one = 77; one == 0; --one) {
if(one == 77) {
System.out.println("Original integer:" + one);
}
else {
System.out.println("Integer: " + one);
}
}
}
}
声明for语句分为3部分
for(int one = 77; one > 0; --one) {
初始化、终止和增量
您的for循环已完成
初始化为intone=77代码>
终止为one==0代码>
增量为--1
它还说
当终止表达式的计算结果为false时,循环终止
这意味着one
将从77开始,并在一等于零时减少每个循环
因此,只需根据您需要的行为,将终止符更改为true,直到它达到零为止,或更改为true,直到它超过零为止。更改代码,使程序在for循环中至少输入一次。因为您初始化了i=77,所以当检查条件1==0时,发现它为false。因此程序不会进入for循环,因此不会打印任何内容
for (initialization; termination; increment) {
statement(s)
}
您希望这段代码做什么?明确地说,您希望第一个和最后一个输出是什么?我清楚地指出“代码无法打印值”,这可能意味着我需要帮助打印值。没有必要对我投反对票。@RyanTheLeach如果OP只是想让循环先做一些事情(任何事情),那真的不重要——修复最后的输出是另一个问题。OP只是学习,学习一步一步地进行。@Henry,老实说,我只是随机命名它,因为我只是想看看for循环是如何工作的,我没有意识到会发生错误。@Flamentix命名变量one
只是一个不好的风格选择,但它不会导致您的错误。我尝试了您的建议。但是,当我试图编译代码时,它不会返回语法错误,但不会打印任何值。谢谢,这很有帮助,结果我意外地将符号从“==”改为“>”,而不是“@RyanTheLeach downvoates是您的特权,但我认为对于这件小事,在这里对大多数答案进行向下投票是过分的。所有这些答案都指向了主要问题,即OP不理解如何使用for循环条件。正如我在其他帖子中所述,您提供了终止,但没有显示输出,也没有解释当问题不明确时循环何时停止。
class Some
{
public static void main(String args[])
{
for(int one = 77; one>=0; --one)
{
if(one == 77)
{
System.out.println("Original integer:" + one);
}
else
{
System.out.println("Integer: " + one);
}
}
}
}