java实现进度条(附完整源码)
时间: 2023-10-17 22:10:12 浏览: 155
以下是一个简单的Java实现进度条的示例代码:
```java
public class ProgressBar {
private int minValue;
private int maxValue;
private int currentValue;
public ProgressBar(int minValue, int maxValue) {
this.minValue = minValue;
this.maxValue = maxValue;
this.currentValue = minValue;
}
public void setValue(int value) {
this.currentValue = value;
draw();
}
private void draw() {
int percent = (int) (((double) currentValue - minValue) / (maxValue - minValue) * 100);
System.out.print("\r[");
for (int i = 0; i < 100; i++) {
if (i < percent) {
System.out.print("=");
} else {
System.out.print(" ");
}
}
System.out.print("] " + percent + "%");
}
public static void main(String[] args) throws InterruptedException {
ProgressBar progressBar = new ProgressBar(0, 100);
for (int i = 0; i <= 100; i++) {
Thread.sleep(50);
progressBar.setValue(i);
}
}
}
```
代码解释:
1. `ProgressBar`类表示进度条,它有三个实例变量:`minValue`表示最小值,`maxValue`表示最大值,`currentValue`表示当前值。
2. `ProgressBar`类有一个构造函数,用于初始化最小值和最大值,当前值初始化为最小值。
3. `setValue`方法用于设置当前值,并且会重新绘制进度条。
4. `draw`方法用于绘制进度条,它首先计算当前值所占百分比,然后根据百分比绘制进度条。
5. `main`方法演示了如何使用进度条,它创建了一个进度条对象并循环设置进度条的值,每次设置后等待50毫秒。
运行代码可以看到一个简单的进度条在控制台上输出。
注意:这只是一个简单的示例,实际应用中可能需要更多的功能,比如支持多线程、自定义颜色和样式等。
阅读全文