本文主要是介绍Java单备忘录ToDo,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
-
先思考要创建的是3个类,分别为:Mune,methods,ToDo
-
先创建一个封装类,封装各个属性。这个类为Menu
public class Menu {
private long tid;
private String date;
private String details;
private boolean status;
public long getTid() {
return tid;
}
public void setTid(long tid) {
this.tid = tid;
}
public String getDate() {
return date;
}
public void setDate(String date) {
this.date = date;
}
public String getDetails() {
return details;
}
public void setDetails(String details) {
this.details = details;
}
public boolean isStatus() {
return status;
}
public void setStatus(boolean status) {
this.status = status;
}
public String toString() {
String msg = "";
msg += tid+"\t";
msg += date+"\t";
msg += details+"\t";
msg += status?"已完成":"未完成"+"\t";
return msg;
}
}
3.创建方法类 Methods
public class methods {
//任务列表数组
private Menu[] taskList;
//当前列表中的任务个数
int count;
//构造器,初始化;
public methods() {
count = 0;
taskList = new Menu[100];//100元素的列表
}
//获取当前任务个数;
public int getCount() {
return this.count;
}
//添加,上限100,循环记录,超100,覆盖第一个;
public void Add(Menu task) {
if(count<100) {
taskList[count]= task;
count++;
}else {
for(int i=1; i<100; i++)
taskList[i-1] =taskList[i];
taskList[99] = task;
}
}
//修改状态:
public void update(long tid) {
for (int i = 0; i < count; i++) {
if(taskList[i].getTid() == tid) {
taskList[i].setStatus(true);
break;
}
}
}
//显示:
public void show() {
if(count==0) {
System.out.println("任务列表为空!");
return;
}
for (int i = 0; i < count; i++) {
System.out.println(taskList[i]);
}
System.out.println("共有任务"+count+"条");
System.out.println("======over======");
}
}
4.创建,测试类ToDo,调用方法(methods)
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class ToDo {
static Scanner input = new Scanner(System.in);
public static void menu() {
System.out.println("1.显示所有任务 "+"\n"+"2.添加新任务 ");
System.out.println("3.执行任务 (修改状态)");
System.out.println("其它.退出程序");
}
public static Menu inputTask() {
Menu task = new Menu();
Date now = new Date();//获取系统当前时间
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//日期时间格式化对象
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyyMMddHHmm");//日期时间格式化对象
//编号自动,时间是获取系统当前时间,状态默认是任务未办理,描述输入
long tid =Long.parseLong(sdf2.format(now));
task.setTid( tid );//编号自动
task.setDate(sdf.format(now));//格式化时间为一个字符串
task.setStatus(false);//状态默认是任务未办理
System.out.println("请输入任务描述:");
task.setDetails(input.next());//描述输入
return task;
}
public static void main(String[] args) {
methods taskList = new methods();
while (true) {
System.out.println("======备忘录=====");
menu();
System.out.print("请选择:");
int choose = input.nextInt();
switch (choose) {
case 1://显示
System.out.println("显示所有任务 列表");
taskList.show();
break;
case 2://添加
System.out.println("添加新任务");
Menu t = inputTask();
taskList.Add(t);
break;
default://修改状态
System.out.println("执行任务 (修改状态)");
System.out.print("请输入任务编号:");
long tid = input.nextLong();
taskList.update(tid);
break;
}
}
}
}
这篇关于Java单备忘录ToDo的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!