Java实现简易待办事项列表

简介: Java实现简易待办事项列表

待办事项列表是日常工作和生活中重要的工具,Java作为一种广泛使用的编程语言,可以方便地实现待办事项列表的功能。本文将介绍如何使用Java实现一个简易的待办事项列表,包括事项的添加、删除、完成和查看等功能。文章最后将提供完整代码和运行结果。


关键词:Java;待办事项;添加;删除;完成;查看

1. 引言

待办事项列表在个人和团队工作中起着重要的作用,它可以帮助我们管理日常任务,提高工作效率。使用Java实现一个简易的待办事项列表,不仅可以方便地添加、删除和完成事项,还可以查看所有事项。本文将介绍如何使用Java实现这样一个待办事项列表。

2. 待办事项列表功能设计

本文设计的简易待办事项列表将实现以下功能:

1)事项添加:用户可以输入新的待办事项;

2)事项删除:用户可以输入要删除的事项;

3)事项完成:用户可以输入要完成的事项;

4)查看所有事项:列出所有待办事项,包括已完成和未完成的事项。

3. Java实现待办事项列表

3.1 引入包

首先,我们需要引入Java的标准库,以便使用基本的输入输出和集合操作。

import java.util.ArrayList;
import java.util.Scanner;

3.2 定义待办事项类

我们定义一个名为TodoItem的类,用于存储待办事项的属性。

public class TodoItem {
   private String description;
   private boolean isCompleted;
   public TodoItem(String description) {
       this.description = description;
       this.isCompleted = false;
    }
   // getters and setters
   public String getDescription() {
       return description;
    }
   public void setDescription(String description) {
       this.description = description;
    }
   public boolean isCompleted() {
       return isCompleted;
    }
   public void setCompleted(boolean completed) {
       isCompleted = completed;
    }
   @Override
   public String toString() {
       return isCompleted ? "[x] " : "[ ] ";
    }
}

3.3 定义待办事项列表类

我们定义一个名为TodoList的类,用于实现待办事项列表的功能。

import java.util.ArrayList;
import java.util.Scanner;
public class TodoList {
   private ArrayList<TodoItem> items;
   public TodoList() {
       this.items = new ArrayList<>();
    }
   public void addItem(TodoItem item) {
       items.add(item);
    }
   public void removeItem(String description) {
       items.removeIf(item -> item.getDescription().equals(description));
    }
   public void completeItem(String description) {
       for (TodoItem item : items) {
           if (item.getDescription().equals(description)) {
                item.setCompleted(true);
                break;
           }
       }
    }
   public void displayItems() {
       for (TodoItem item : items) {
           System.out.println(item);
       }
    }
}

3.4 主函数

在主函数中,我们创建一个待办事项列表实例,并调用相应的方法来演示系统的功能。

public class Main {
   public static void main(String[] args) {
       TodoList todoList = new TodoList();
       Scanner scanner = new Scanner(System.in);
       while (true) {
           System.out.println("简易待办事项列表");
           System.out.println("1. 添加事项");
           System.out.println("2. 删除事项");
           System.out.println("3. 完成事项");
           System.out.println("4. 查看所有事项");
           System.out.println("5. 退出");
           int choice = scanner.nextInt();
           scanner.nextLine(); // 清除缓冲区
           switch (choice) {
                case 1:
                    System.out.println("请输入新事项
目录
相关文章
|
7月前
|
存储 Java 程序员
Java判断列表中元素的唯一性
Java判断列表中元素的唯一性
|
4月前
|
存储 Java
如何在 Java 中打印字符串数组列表
【8月更文挑战第23天】
51 2
|
4月前
|
Java 开发者
在Java编程中,if-else与switch作为核心的条件控制语句,各有千秋。if-else基于条件分支,适用于复杂逻辑;而switch则擅长处理枚举或固定选项列表,提供简洁高效的解决方案
在Java编程中,if-else与switch作为核心的条件控制语句,各有千秋。if-else基于条件分支,适用于复杂逻辑;而switch则擅长处理枚举或固定选项列表,提供简洁高效的解决方案。本文通过技术综述及示例代码,剖析两者在性能上的差异。if-else具有短路特性,但条件增多时JVM会优化提升性能;switch则利用跳转表机制,在处理大量固定选项时表现出色。通过实验对比可见,switch在重复case值处理上通常更快。尽管如此,选择时还需兼顾代码的可读性和维护性。理解这些细节有助于开发者编写出既高效又优雅的Java代码。
66 2
|
4月前
|
存储 搜索推荐 算法
在 Java 中如何更改数组列表的顺序
【8月更文挑战第23天】
218 0
|
4月前
|
存储 安全 Java
在 Java 中如何存储数组列表
【8月更文挑战第23天】
48 0
|
4月前
|
存储 Java API
如何在 Java 中创建 ArrayList 列表?
【8月更文挑战第23天】
127 0
|
4月前
|
存储 Java API
如何在 Java 中填充数组列表?
【8月更文挑战第23天】
41 0
|
6月前
|
NoSQL Java Redis
【Redis】 Java操作客户端命令——列表操作与哈希操作
【Redis】 Java操作客户端命令——列表操作与哈希操作
|
7月前
|
数据采集 前端开发 Java
2024年全新基于Java爬取微博数据(完整版)
【5月更文挑战第9天】适用于2024年 的 基于 Java 爬取微博数据,涉及 微博正文、图片、视频、粉丝数、关注数、等微博主页正文列表数据及微博主页用户数据信息的获取
|
7月前
|
数据采集 前端开发 Java
基于Java爬取微博数据(一) 微博主页正文列表数据
【5月更文挑战第16天】讲述如何通过 Java 爬取微博数据 微博主页正文列表数据,以及相应的注意点