首先定义任务类封装名称和完成状态,再通过集合存储任务并统计总数与完成数,最后计算完成率。示例中创建三个任务,输出总任务数、已完成数及完成率66.67%,核心逻辑清晰,适用于简单任务统计场景。

要实现任务完成情况的统计,核心是定义任务数据结构、记录状态,并通过逻辑计算完成比例或分类汇总。Java 提供了丰富的数据类型和集合工具来支持这类功能。下面介绍一种简单实用的实现方式。
定义任务类
每个任务通常包含名称、是否完成等基本信息。可以创建一个 Task 类来封装这些属性。
public class Task {
private String name;
private boolean completed;
public Task(String name, boolean completed) {
this.name = name;
this.completed = completed;
}
public boolean isCompleted() {
return completed;
}
// 可添加 getter 和 setter 方法}
Shopxp网上购物系统
Shopxp购物系统历经多年的考验,并在推出shopxp免费购物系统下载之后,收到用户反馈的各种安全、漏洞、BUG、使用问题进行多次修补,已经从成熟迈向经典,再好的系统也会有问题,在完善的系统也从在安全漏洞,该系统完全开源可编辑,当您下载这套商城系统之后,可以结合自身的技术情况,进行开发完善,当然您如果有更好的建议可从官方网站提交给我们。Shopxp网上购物系统完整可用,无任何收费项目。该系统经过
下载
使用集合存储任务并统计
将多个任务放入集合中,然后遍历统计已完成和总任务数,从而计算完成率。
立即学习“Java免费学习笔记(深入)”;
import java.util.*;public class TaskStatistics { private List
tasks = new ArrayList<>(); public void addTask(Task task) { tasks.add(task); } public int getTotalCount() { return tasks.size(); } public int getCompletedCount() { int count = 0; for (Task task : tasks) { if (task.isCompleted()) { count++; } } return count; } public double getCompletionRate() { if (tasks.isEmpty()) return 0.0; return (double) getCompletedCount() / getTotalCount(); }}
示例调用与输出结果
创建几个任务,加入统计器,然后查看完成情况。
public class Main {
public static void main(String[] args) {
TaskStatistics stats = new TaskStatistics();
stats.addTask(new Task("编写文档", true));
stats.addTask(new Task("测试代码", false));
stats.addTask(new Task("修复bug", true));
System.out.println("总任务数: " + stats.getTotalCount());
System.out.println("已完成任务: " + stats.getCompletedCount());
System.out.println("完成率: " + String.format("%.2f%%", stats.getCompletionRate() * 100));
}}
输出结果会是:
总任务数: 3已完成任务: 2
完成率: 66.67%
这种实现方式简洁明了,适用于小型系统或本地任务管理。如果需要更复杂的功能(如按分类、优先级、时间维度统计),可以在 Task 类中扩展字段,并在统计方法中增加分组逻辑(例如使用 Map 或 Stream 分组)。Java 8 的 Stream API 也能简化统计过程:
long completed = tasks.stream().filter(Task::isCompleted).count();
基本上就这些。不复杂但容易忽略的是数据的一致性和状态更新机制——确保任务状态变更能被正确记录和反映在统计中。









