java -- 控制台终端打印显示进度条

GoogleVip8 1年前 ⋅ 433 阅读
public static void main(String[] args) {

    //进度条总长度
    int barLen = 100;
    // 进度逻辑
    for (int percent = 0; percent <= barLen; percent++) {
        printSchedule(percent,barLen);

        // 等待10,方便看效果
        try {
            Thread.sleep(100);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}
/**
 * 打印进度方法
 *
 * @param percent 当前进度
 * @param barLen 进度条总长度
 */
public static void printSchedule(int percent, int barLen) {
    // 删除原有进度
    for (int i = 0; i < barLen + 10; i++) {
        // 退格符,就是删除键
        // 删除原有进度
        System.out.print("\b");
    }
    // 总进度/当前进度=进度条百分比
    int now = barLen * percent / 100;

    //░▒
    // 打印当前进度,>表示
    for (int i = 0; i < now; i++) {
        System.out.print(">");
    }
    // 打印剩余进度,空格表示
    for (int i = 0; i < barLen - now; i++) {
        System.out.print(" ");
    }
    // 打印当前进度百分比数字
    System.out.print("  " + percent + "%");
}

全部评论: 0

    我有话说: