Java学习(84)Java集合——案例:公告管理(ArrayList增删改查)

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

案例公告管理增删改查ArrayList增删改查

公告管理需求

1. 功能需求

(1) 公告的添加和显示
(2) 在指定位置处插入广告
(3) 删除公告
(4) 修改公告。

2. 公告类属性

(1) 编号id
(2) 标题title
(3) 创建人creator
(4) 创建时间creatTime。

3. 公告类方法

(1) 构造方法
(2) 获取和设置属性值的方法。

实现代码

定义公告类

package com.study.set;
import java.util.Date;
public class Notice {
	private int id;//ID
	private String title;//标题
	private String creator;//创建人
	private Date createTime;//创建时间
	public Notice(int id, String title, String creator, Date createTime) {
		super();
		this.id = id;
		this.title = title;
		this.creator = creator;
		this.createTime = createTime;
	}
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getTitle() {
		return title;
	}
	public void setTitle(String title) {
		this.title = title;
	}
	public String getCreator() {
		return creator;
	}
	public void setCreator(String creator) {
		this.creator = creator;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}
}

注快捷建立构造方法{} → \to 右键 → \to Source → \to Generate Constructor using Fields… → \to 勾选方法 → \to 创建完毕

公告的添加和显示

		// 创建Notice类的对象生成三条公告
		Notice notice1 = new Notice(1, "欢迎来到慕课网", "管理员", new Date());
		Notice notice2 = new Notice(2, "请同学们按时提交作业", "老师", new Date());
		Notice notice3 = new Notice(3, "考勤通知", "老师", new Date());

		// 添加公告
		ArrayList noticeList = new ArrayList();
		noticeList.add(notice1);
		noticeList.add(notice2);
		noticeList.add(notice3);

		// 显示公告
		System.out.println("公告的内容为");
		for (int i = 0; i < noticeList.size(); i++) {
			System.out.println(i + 1 + ":" + ((Notice) (noticeList.get(i))).getTitle());
		}

注在显示代码中noticeList.get(i)的返回值类型为Object而只有Notice类才有getTitle()方法因此这里需要进行类型的强制转换。

公告的删除和修改

修改set

		System.out.println("**************************************");
		// 在第一条公告后面添加一条新公告
		Notice notice4 = new Notice(4, "在线编辑器可以使用啦", "管理员", new Date());
		noticeList.add(1, notice4);

		// 显示公告
		System.out.println("公告的内容为");
		for (int i = 0; i < noticeList.size(); i++) {
			System.out.println(i + 1 + ":" + ((Notice) (noticeList.get(i))).getTitle());
		}

		System.out.println("**************************************");
		// 删除按时提交作业的公告
		noticeList.remove(2);
		// 显示公告
		System.out.println("删除公告后的内容为");
		for (int i = 0; i < noticeList.size(); i++) {
			System.out.println(i + 1 + ":" + ((Notice) (noticeList.get(i))).getTitle());
		}
		
		//将第二条公告改为Java在线编辑器可以使用啦
		System.out.println("**************************************");
		//修改第二条公告中title的值
		notice4.setTitle("Java在线编辑器可以使用啦");
		noticeList.set(1, notice4);
		System.out.println("修改后公告的内容为");
		for (int i = 0; i < noticeList.size(); i++) {
			System.out.println(i + 1 + ":" + ((Notice) (noticeList.get(i))).getTitle());
		}

运行结果

公告的内容为
1:欢迎来到学习网
2:请同学们按时提交作业
3:考勤通知
**************************************
公告的内容为
1:欢迎来到学习网
2:在线编辑器可以使用啦
3:请同学们按时提交作业
4:考勤通知
**************************************
删除公告后的内容为
1:欢迎来到学习网
2:在线编辑器可以使用啦
3:考勤通知
**************************************
修改后公告的内容为
1:欢迎来到学习网
2:Java在线编辑器可以使用啦
3:考勤通知

注格式化快捷键Ctrl+F。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Java