You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java方法无输出无报错:按变量次数输出字符串问题排查

问题分析与解决

核心问题

你写的happyGreetings方法没有输出,根源是for循环的条件逻辑错误:

for (int i = 0; i==this.day; i++ )

初始i的值是0,调用方法时date2.day是4,0 == 4不成立,循环直接终止,自然不会执行任何输出语句。

修正方案

要让循环执行this.day次,循环条件应该判断i小于this.day——从i=0开始,直到i达到this.day-1,刚好执行this.day次。修正后的方法如下:

public void happyGreetings() {
    // 局部变量i,满足方法必须包含局部变量的要求
    for (int i = 0; i < this.day; i++ ) {
        System.out.println("Happy Greetings!");
    }
}

调用date2.happyGreetings()后,会输出4次"Happy Greetings!",和date2.day的值完全一致。

补充:do-while循环实现方式

如果你想用do-while循环完成需求,同样需要正确控制循环次数,示例代码如下:

public void happyGreetings() {
    // 局部变量count,作为循环计数器
    int count = 0;
    do {
        System.out.println("Happy Greetings!");
        count++;
    } while (count < this.day);
}

do-while会先执行一次循环体,再判断条件,同样能保证输出次数等于this.day的值。

内容的提问来源于stack exchange,提问作者Bake

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 03:55:20