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

如何在Console App中实现三点循环加载动画?

嘿,这个加载动画的需求太常见啦!我给你整理了几种主流编程语言的实现方案,都是简单易懂、拿来就能用的:

C# 实现方法

核心思路是用不换行输出逐个打印点,循环完成后用退格字符清除,再重新开始:

using System;
using System.Threading;

class LoadingAnimation
{
    static void Main()
    {
        Console.Write("加载中");
        // 无限循环,可根据实际需求替换为停止条件
        while (true) 
        {
            // 逐个打印三个点
            for (int i = 0; i < 3; i++)
            {
                Console.Write(".");
                Thread.Sleep(500); // 控制每个点的显示间隔,数值越小动画越快
            }
            // 用退格符\b删除三个点,再用空格覆盖,最后退格回到初始位置
            Console.Write("\b\b\b   \b\b\b");
        }
    }
}
Python 实现方法

Python需要注意强制刷新输出缓冲区,不然点可能不会实时显示:

import sys
import time

print("加载中", end="")
while True:
    for _ in range(3):
        sys.stdout.write(".")
        sys.stdout.flush()  # 强制刷新缓冲区,确保点立即显示
        time.sleep(0.5)
    # 重置输出位置,准备下一轮循环
    sys.stdout.write("\b\b\b   \b\b\b")
    sys.stdout.flush()
Java 实现方法

Java的实现逻辑和C#类似,注意处理线程睡眠的异常:

public class LoadingAnimation {
    public static void main(String[] args) throws InterruptedException {
        System.out.print("加载中");
        while (true) {
            for (int i = 0; i < 3; i++) {
                System.out.print(".");
                Thread.sleep(500);
            }
            // 清除已打印的三个点,回到初始状态
            System.out.print("\b\b\b   \b\b\b");
        }
    }
}

小技巧补充

  • 调整睡眠时长(比如把500改成300)可以加快或减慢动画速度;
  • 如果需要在某个条件下停止动画,把while(true)替换成你的判断条件(比如while(isLoadingComplete == false));
  • 可以自定义前缀文本,比如把“加载中”改成“处理请求中”之类的。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 09:30:00