iT邦幫忙

0

day19 練習簡單進度條 / CLI 美化

  • 分享至 

  • xImage
  •  

CLI 全名是 Command Line Interface(命令列介面)。

package day1.day1;

import java.io.IOException;

public class Day19demo {
public static void main(String[] args) throws InterruptedException {
int total=50;

    for(int done=0;done<=total;done++){

        double progress =total == 0 ? 1.0: (double)done/total;

        int percent=(int)(100*progress);

        String bar ="[" + "=".repeat(done)+" ".repeat(total - done)+"]";

        System.out.print("\r" + bar + " "+ percent + "%");

        Thread.sleep(100);
    }
   System.out.println("\n完成!");
}

}
https://ithelp.ithome.com.tw/upload/images/20251013/20179429fp01n7f7ow.png

進度條的概念:
在 CLI(命令列)程式中,可以用 System.out.print("\r ...") 來覆蓋同一行,模擬「進度更新」。
用「字元組合」(例如 = 和空格) 就能畫出簡單的進度條。

百分比計算:
percent = (目前完成數 / 總數) * 100
為了避免除以 0,要小心檢查分母。

模擬執行:
用 Thread.sleep() 來假裝程式在處理東西,讓進度條看起來一格一格更新。
這個方法可以練習控制程式的「時間感」。

程式設計思維:
將數字轉換成「視覺化效果」(進度條)其實就是一種小型的「資料輸出美化」。
這讓我知道程式不只是算數,還能用更直觀的方式跟使用者互動。

今天我學會了如何在 Java 裡做一個簡單的進度條。
一開始覺得進度條應該很難,但實際上只是用 字串輸出 + 覆蓋同一行 就能做出來。
這個過程讓我發現,程式的效果很多時候是「巧思」,不一定要用很複雜的程式碼。
而且在學習中,我也體會到一個小細節很重要:像是 \r(回到行首)和 Thread.sleep(),這些平常可能不會注意的指令,其實就能讓程式看起來更專業。
我覺得這個進度條的練習,讓我對「CLI 美化」有了初步的概念,未來做專案時就能加上這些小功能,讓程式更友善。


圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言